MouseBIRN.WebHome (book view)
Search: \.*

Topics in MouseBIRN web: Changed: Changed by:

2007BIRNAHMeeting   15 Oct 2007 - 14:32 - r1.4   JylBoline
The 2007 BIRN AHM will be held in Oct. 15-18 in Bethesda, MD
for more information visit the BIRN site

2007MouseDay

Mouse Meeting Day is Monday October 15th:

2007MouseDay   15 Oct 2007 - 14:34 - NEW   JylBoline
Overview of Progress and Plans
200812WorkingPage   10 Dec 2008 - 23:09 - NEW   DarenLee
No permission to read topic MouseBIRN?.200812WorkingPage - perhaps you need to log in?
2008AHMPlanOct20   20 Jun 2008 - 22:41 - r1.23   DarenLee


2008 AHM (Oct.20) MBAT3.0 Requirements

This document lists the required functionality for MBAT that will be delivered at the 2008 All-hands Meeting on October 20,2008. For each category, the collaborators are also listed.


Search Core

  1. Design client data source plugin framework [Daren,Queenie,Steve]
    1. will plugins work with current mbSearch core?
  2. Implement client data source plugin framework [Queenie]
  3. Migrate each datasource as plugin [Queenie]
    1. evaluate what info on metadata server is needed
  4. Query Results Table: [Steve]
    1. Add move/drag column (already exists)
    2. Add sort by column
    3. Add customizable columns (ie: right click table headers and select columns to display like Windows Explorer)
    4. Add resizable JPanel for table
    5. Thumbnail view

Do these concurrently or wait till framework is finished?

  1. Complete support for all query terms
  2. Add CCDB datatypes (wait for plugins?)
    1. 3D images (returned as analyze images?)
    2. 3D reconstructed surfaces?

Do we have time for this?

  1. Add keyword search functionality
    1. identify which datasources can have keyword functionality
    2. how does term source API integrate?
    3. what will be result types and how to display in results table?
    4. design GUI (need clustering in the future)
  2. Add RDF query language functionality
    1. SPARQL (CCDB Cellular Knowledge Base: http://purl.oclc.org/ckb/)

Viewer Core

  1. CCDB Zoomify
    1. annotation functionality
  2. Smart Atlas
    1. stereotaxic coordinates

Analysis Core

  1. Spatial Registration Plugins
    1. Landmark Based Warping (Davit)
    2. Jibber (Asif)

DocManager Core

  1. ImageJ File Plugins

Open Issues

  1. ImageJ processing plugins
  2. Atlas interoperability
  3. Plugins Embedded?
    1. allow plugin to create JFrames vs. everything embedded in MBAT?
  4. Capture work
    1. XML save file

Collaborative Efforts

  1. CCDB/AIDB
  2. Universal WebServices API


Task List

  1. Reevaluate AHM Requirements
    1. Determine new features to add by Fall AHM
      1. Keyword search
      2. Analysis component in viewer
      3. Framework for clients to add new Data Sources
      4. Access control module for client sources
      5. Public vs private databases
      6. Landmark Registration
    2. Determine collaborative efforts to support
      1. Uniform API (XCEDE, FUGE/MAGE, WebServices)
      2. AIDB / 3D Data sources
      3. Concept Mapper
      4. NeuroTerrain
  2. Redesign entire MBAT framework
    1. Code review for mbSearch core
    2. Merge old and new mbSearch datatypes (ie: ProbeNew?, etc)
    3. Refactor all icons to common/resources/icons. Check build scripts for unused or duplicate (nested) jar includes.
    4. Shiva.IO classes to standalone module
    5. Data Source data in MetaData or XML



Existing MBAT Improvements

  1. Automatically sync to appropriate atlas slice for given slice
    • Also show a marker for location of smaller relative size datasets in atlas

Data Sources [Caltech, Duke, UCSD, CC, UCI, fBIRN, XCEDE WG]

  1. Add 3D images (AIDB)
    1. Determine webservices API [Ilya,Jeff B.,Allan, Jeff G, XCEDE WG]
    2. Determine data exchange format (XCEDE) [need a subgroup from Mouse to work more with XCEDE WG]
  2. Fix ROI Query (ArcIMS? or new image server? Asif works with access, but not sure who are directly responsible for servers)
    1. Server-side problems?
    2. Needs to be easier to find data
    3. Needs more data in database
    4. Needs more metadata about data retrieved

Atlasing [UCSD, Drexel]

  1. Infrastructure for Atlas Interoperability Server
  2. Importation of Drexel's NeuroTerrain Atlas into MBAT format
    • next steps are to use this framework to access MBL data using their atlas and Atlas Interoperability infrastructure

Query Engine [AIDB, all Mouse DBs, Brian, Vadim, and Bill]

  1. Refactor
    1. Clean up v2.0
    2. Gene expression to mbSearch
      1. MBAT GUI code must change
  2. Issues
    1. How to classify Brain mosaics in query terms
  3. Query Terms
    1. Experimental Info
      1. Experimental Type
        1. Any
        2. Gene Expression
          1. Any
          2. Image based
          3. Microarray
        3. MRI
        4. Electron Microscopy
        5. Cell Fills
      2. Project
        1. Any
        2. BxD
        3. Development
        4. Reeler
        5. EAE
        6. Sex Differences/Dimorphism
        7. Keyword... (freetext)
      3. Investigator
        1. Any
        2. Keyword... (freetext)
    2. Gene/Molecule
      1. Gene Attribute
        1. Gene Symbol (freetext)
        2. Gene Name (freetext)
        3. Protein (freetext)
        4. Keyword... (freetext)
      2. rather than the more specific gene function and we'll have to connect to a more powerful annotation DB-both Rob's and Paul Pavlidis'(?)
      3. Add way to list available gene symbols?
    3. Subject/Organism
      1. Species
        1. Mouse
      2. Strains
        1. C57BL
        2. 12956
        3. A/J
        4. B6D2F1
        5. BALB/c
        6. CBA
        7. C3H
        8. DBA
        9. FVB
      3. Developmental Stage
        1. default: adult
        2. All/any
        3. Embryonic (0-11 embryonic days)
        4. Fetal (11-20(birth) embryonic days)
        5. Neonate/infant (0-12 postnatal days)
        6. Child/pup (12-24 postnatal days)
        7. Juvenile (24-60 postnatal days)
        8. Adult (60-300 postnatal days)
        9. days/weeks/months?
      4. Gender
        1. any
        2. male
        3. female
        4. other
    4. Anatomical Area
      1. Any
      2. CNS hierarchy
      3. Entire Organism
      4. Cell
      5. Subcellular
      6. Other part (freetext)
  4. Query Term Dependencies
    1. If Gene Expression selected --> show Gene/Molecule searchgroup
    2. If Gene/Molecule search group enabled --> grey MRI
    3. If MRI selected --> disable Gene/Molecule searchgroup
  5. Formulating query
    1. Integrate with Concept Term Mapping
    2. Integrate with Mediator
  6. Expand current data sources
    1. AIDB
      1. Query terms?
      2. Steps required for MBAT to connect to AIDB?

Registration Workspace [UCSD, Drexel]

  1. Framework for loading data
    1. from Query workspace
    2. locally
  2. Framework
    1. All registration "external" to MBAT
      1. Infrastructure for local binaries (Java & non-Java)
      2. Infrastructure for remote binaries (Pipeline, UCSD Portal)
    2. Infrastructure for data types:
      1. subimage
      2. 2D
      3. 3D
      4. 4D
    3. Infrastructure for landmark based algorithms
    4. Infrastructure for intensity based algorithms? this may be where we can create a tie to Pipeline
  3. Supported Data types
    1. 2D - 2D
      1. manual
      2. default algo: Ryan and Craig's algorithm, taking advantage of Heng's UI for points (possibly contours)
    2. Subimage - 2D
      1. default algo: manual
    3. Subimage - 3D
      1. default algo: manual
    4. 2D - 3D
      1. default algo: ???: _facilitate manual first-find close spot in atlas, then possible implementation of Erh-Fang's contour-based algorithms, although it may be too difficult to implement easily, then follow up with 2D - 2D using algorithm and interface developed above_

Comparison Workspace

  1. Framework for loading data
    1. locally
    2. from Registration workspace
    3. pre-registered spec (XML)
    4. from SRB? or is this covered by Registration workspace
  2. Framework for flexibility and customization
    1. Allow for N comparisons of datasets
    2. Allow for customizable window layout and size
    3. Allow for virtual page of infinite size
  3. Framework for side-by-side view
  4. Framework for maximizing real estate for comparison image
    1. Replace 4-up view
      1. Side-by-side: two windows
      2. Overlay: one window if this is an option that's fine, but not a default as we've found that in general people prefer side-by-side
    2. Collapsible subwindows
      1. Thumbnail viewer
      2. Comparison cart?
    3. Context driven controls
      1. HUD controls overlayed over image for zoom/pan/rotate (aka: GoogleEarth?)
  5. Analysis Tools
    1. Linked controls
      1. Handle different scales? (ie: 2 volumes with different sizes)
      2. Handle different data types? (ie: 2D v. 3D image / surface v. image)
    2. Viewing
      1. View XY, YZ, XZ planes
      2. Pan
      3. Annotate
      4. Browse through slices
      5. Zoom
    3. Overlay comparison ???
      1. Blending (Remove background color / need mask?)
      2. Logical operations (union, intersection, etc)
      3. Layers (aka: GoogleEarth?)
2009WorkingPage   08 Jun 2009 - 23:37 - r1.8   DarenLee
Table of Contents


Working plan: June 2009-October 2009

The MBAT team has identified several features for delivery by October 2009 (Society for Neuro Science Annual Meeting: Oct. 17-21)). The following list are goals for the workspaces. Priorities have not yet been assigned and it is not expected that all goals will be met.

User Documentation

  1. Tutorial videos
  2. User Manual pdf

Saving

  1. Save/cache to local file

Viewer workspace:

  1. synchronized cross-hair
  2. Layer controls: expand/collapse all
  3. Layer controls: slider fix
  4. Multi-resolution image layering (different resolutions for label image and template image).
  5. Atlas coloring
    • by label (paint by number)
    • by voxel
  6. Set image origin and orientation (generic mechanism which can support Waxholm Space (WHS))
    • Sept deadline?

  1. Dynamic loading of multi-resolution data (eg: zoomify).
    • NT/MBL
    • CCDB

  • Auto arrange (tile) viewer panes.
  • Oblique view/arbitrary plane of section through an image volume.
  • Image painting (segmentation)

Plugin API:

  1. inter-plugin communication
    1. ABA rendering plugin
    2. GENSAT rendering plugin

Hierarchy display

  1. Implement tree view.
  2. Add search hierarchy (research feasibility)
  • Look into other libraries, methods and layouts for graph display.

User customization:

  1. "My MBAT" preferences such as:
    1. unload plugins
      1. workspaces
      2. tool plugins per workspace
    • MBAT login security
    • orientation
    • transformations
    • coordinate system

Registration workspace:

  1. Rigid body alignment
    1. FLIRT
  • Generic Pipeline plugin
    • Pipeline team create integrated UI to plugin MBAT workspace
    • Distribution (LONI License) concerns for Pipeline.jar
      • provide link to LONI download site

Analysis Plugin API

  • ImageJ image processing evaluation

Search Workspace:

  • Design but not included in Oct release
  1. UMD server to XML (use ontology)
  2. Query term plugin API
  • Boolean logic for keyword search (and/or)

Editors:

  • Atlas assembly (eg: open .ilf, label image and image data-> save .atlas file or select files to assemble to write .atlas)
  • Hierarchy editor (.ilf) similar to the BrainGraph editor.

Partner Requests

  • Java WebStart? (UCSD)
  • SmartAtlas?/ArcIMS plugin (UCSD)


Working plan: October 2009 -

Viewer workspace

  • Annotation tools
    • arrow/text per slice
  • Analysis Tools
    • measure
    • angle
    • ROI/VOI
      • polygon selection
      • painting
      • automatic (ie: region growing)
    • ROI/VOI stats
  • Coordinate axis
    • Radiological v. Neurological (MIPAV)
    • Arbirary assignment (Slicer)
  • compare a VOI stat over time/data sets (ie: growth over development)
  • Volume Rendering
    • with lighting


Use Cases

Create/annotate/upload

  • Stage 1:
    1. Search gene
    2. Download images
    3. Discovery: any anatomical structures with same set of gene expression?
    4. annotate/re-annotate/tag image(s)
      • create a) hierarchical graphs, b) anatomical tree
      • (goal: assemble info together)
    5. link to ontology(-ies)

  • Stage 2:
    1. curate the save info/annotated images
    2. compare with existing data set/experiment
    3. save results in some sort of xml format
    4. submit to another datasource (processed data)
2DImages   29 Apr 2009 - 21:09 - r1.6   DarenLee
Table of Contents


2D Image rendering plugin


User Manual



Introduction

The 2D image rendering plugin allows the user to view and manipulate two-dimensional images. Multiple 2D images can be added to any of the 3 axes (Transverse, Sagittal, Horizontal).

Getting Started

To open a file using the 2D image rendering plugin

  1. Open the Viewer Workspace.
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. In the Layer Controls, open the dropdown menu to the right of the Open File button.
  4. Select 2D image(s). An open file dialog box appears. Navigate to and select the file(s) you want to open (multiple selection allowed using Shift+Left-mouse-click). Click Open. If successful, the opened image(s) will appear in the target viewport and layer GUI controls are added to the Layer Controls panel.

To open an object from the cart

  1. Open the Viewer Workspace.
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. Open the Cart Manager.
  4. Select the cart object(s) you want to open (multiple selection allowed using Shift+Left-mouse-click).
  5. In the Cart Manager, select the dropdown menu to the right of the Open button.
  6. Select 2D image(s). If successful, the opened cart object(s) will appear in the target viewport and layer GUI controls are added to the Layer Controls panel.

To add an empty 2D image rendering layer

  1. Open the Viewer Workspace
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. In the Layer Controls, open the dropdown menu to the right of the Add Layer button.
  4. Select 2D image(s). If successful, a layer GUI control is added to the Layer Controls panel.

To add file(s) to an existing 2D rendering plugin layer

  1. Open the Viewer Workspace
  2. Select the target layer in the Layer Controls or in the Viewport.
  3. In the Layer Controls, open the dropdown menu to the right of the Open File button.
  4. Select 2D image(s). An open file dialog box appears. Navigate to and select the file(s) you want to open (multiple selection allowed using Shift+Left-mouse-click).
  5. In the sidebar portion of the open dialog box, select the Add to active layer checkbox. Click Open. If successful, the opened image(s) will be added to the currently selected axis in the target layer.

File Formats supported

The 2D rendering plugin was designed to support any of 2D file formats that can be opened with ImageJ. So far, the following file formats have been verified to open correctly:

  1. Jpeg
  2. GIF
  3. TIFF (color, 16bit greyscale)
  4. PNG
  5. BMP
  6. URLs with MIME type "image/jpeg"

Cart objects supported

  1. derived classes of Image2D
  2. derived classes of Image2DSeries
  3. derived classes of BufferedImageObject

User interface

  • GUI controls
    • Show/Hide: button to show/hide the layer in the viewport
    • Opacity: slider/spinner to adjust the opacity of the layer
    • Image(s): slider/spinner to cine through multiple images of the current axis
    • Contrast: slider/spinner to adjust the image contrast
    • Brightness: slider/spinner to adjust the image brightness
    • Axis: radiobutton group to select the current axis to view
    • Flip: buttons to flip the images in the X,Y,and Z axes
    • Expand/Collapse: button to expand/collapse the GUI controls

  • Keyboard controls
    • Left/Right Arrows: Previous/Next image
    • Up/Down Arrows: Opacity Increase/Decrease

  • Status bar: When the layer is selected, a status bar is displayed on the bottom of the viewport that shows:
    • Name of layer (top-left)
    • Image dimensions (top-right)
    • Image Coordinates relative to the lower left corner of the image (bottom-left)

Functional Specification



Data input methods

Input Method Supported Notes
loading from file yes  
loading from the cart yes  
adding a layer yes  


Serializing/deserializing

In the serialization process, following states are saved:
  • Rotation
  • Scaling
  • Translation
  • Brightness
  • Contrast
  • Opacity
  • X-Flip, Y-Flip, Z-Filp values
Deserialization process restores all the above states.


Linking

  • 2D Image - 2D Image: changing the GUI controls in the master layer will change all the corresponding controls in the slave layers.
  • 2D Image - 3D Volume:
    2D Image - 3D Atlas:
    • Opacity, Contrast, Brightness, Axis, Flip: mirrors master layer changes
    • Image(s): slave layer is set to proportional image number of master layer (ie: if master layer image is set to 50 of 100 then slave layer is set to image 2 of 4)

Workspace Interoperability

None


Error Handling

Method Object Error Exception thrown Notes
load() File file not found yes java.io.FileNotFoundException
unrecognized or bad format yes java.util.zip.DataFormatException
load() Image2D URL syntax error yes java.net.MalformedURLException
URL not found yes java.net.UnknownHostException
URL connection error yes java.io.IOException
HTTP page not found yes java.io.IOException
load() Image2DSeries all errors no No exceptions are thrown for any load error since we want to try to load all the images in the series (ignoring the ones that failed)
load() BufferedImageObject error reading BufferedImage yes java.io.IOException


DarenLee? - 23 Apr 2009

2DimageDM   26 Jul 2006 - 21:59 - r1.3   JylBoline
People: Maryann, Erh-Fang, Bill, Asif, Diana, Van

Suggested plan for outlining a Common Data Model (by August 25)
  • Identify data sources
  • Investigate if these APIs already exist
  • Investigate if any wrappers already exist for desired data sources
  • Develop 2 use case scenarios for potential microarray user: 1 simple, 1 complex
  • Outline a common Data Model and present to the DF and Atlasing groups, Vadim, and Ilya

Supporting Documents
2Dto3D   02 May 2006 - 01:44 - NEW   JylBoline
Discuss methods and issues of reconstructing 2D slices into 3D volumes
3DAtlas   29 Apr 2009 - 22:00 - r1.4   NikhilSane
Table of Contents


3D Atlas rendering plugin


User Manual



Introduction

The 3D Atlas rendering plugin allows the user to view and manipulate digital atlases in the three orthogonal planar views. The user can interactively select the plane coordinates of any of the orthogonal views, show/hide labels of the atlas, and view a graph of the atlas hierarchy.

Getting Started

To open a file using the 3D atlas rendering plugin

  1. Open the Viewer Workspace.
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. In the Layer Controls, open the dropdown menu to the right of the Open File button.
  4. Select 3D atlas. An open file dialog box appears. Navigate to and select the file(s) you want to open (multiple selection allowed using Shift+Left-mouse-click). Click Open. If successful, the digital atlas (volume with colored labels) will appear in the data display area and the label hierarchy graphs will intially be docked to the left-side of the main application frame.

File Formats supported

Cart objects supported

  1. none

User interface

  • GUI controls
    • Show/Hide: button to show/hide the layer in the viewport
    • Opacity: slider/spinner to adjust the opacity of the layer
    • Image(s): slider/spinner to cine through multiple images of the current axis
    • Contrast: slider/spinner to adjust the image contrast
    • Brightness: slider/spinner to adjust the image brightness
    • Axis: radiobutton group to select the current axis to view
    • Flip: buttons to flip the images in the X,Y,and Z axes
    • Expand/Collapse: button to expand/collapse the GUI controls
    • Label Opacity: slider/spinner to adjust the opacity of the label colors
    • Label Set: combobox to select the active label hierarchy (for multiple labels when applicable)

  • Keyboard controls
    • Left/Right Arrows: Previous/Next image
    • Up/Down Arrows: Opacity Increase/Decrease

  • HUD Thumbnails
    • When a 3D Atlas layer is selected, a heads-up-display (HUD) is overlayed in the viewport that shows the three orthogonal view thumbnails for the currently selected planes. Left-mouse-click and drag inside any of the orthogonal thumbnail views will change the currently selected plane to view.

  • Status Bar: When the layer is selected, a status bar is displayed on the bottom of the viewport that shows:
    • Name of the layer (top-left)
    • Image dimensions of the current axis (top-right)
    • Image coordinates relative to the bottom left corner of the current image (bottom-left)
    • Current slice number for each dimension (bottom-right)

  • Display scale
    • When the layer is selected, the scale measurements in real physical dimensions are overlayed in the upper right hand corner of the current viewport.

  • Atlas UI (applied to the layer in the viewport)
    • Mouse left-double-click: select/deselect the label under the mouse cursor. For atlases with multiple hierarchies, the corresponding label for the other labels are also selected/deselected.
    • Shift + Mouse left-double-click: group select labels
    • Mouse hover: moving the mouse cursor over a label in the 3D atlas layer will display the name of the label on the screen. When multiple label hierarchies are available, the corresponding labels are also shown below the primary label.
    • Mouse right-double-click: if labels have been selected, switches to the Search workspace and sends the name of the labels to the keyword search


Functional Specification



Data input methods

Input Method Supported Notes
loading from file yes  
loading from the cart no  
adding a layer no  


Serializing/deserializing

In the serialization process, following states are saved:
  • Rotation
  • Scaling
  • Translation
  • Brightness
  • Contrast
  • Opacity
  • Label opacity
  • Active axis (Transverse/Sagittal/Horizontal)
  • Active image number
  • X-Flip, Y-Flip and Z-Flip values.
Deserialization process restores all the above states.


Linking

  • 3D Atlas - 3D Atlas: using the GUI controls, keyboard controls, and HUD thumbnail controls in the master layer will change all the corresponding controls in the slave layers.
    • Image(s): slave layer is set to proportional image number of master layer (ie: if master layer image is set to 50 of 100 then slave layer is set to image 2 of 4)
    • Label Set: ignored for slave layers
    • Atlas UI: ignored for slave layers
  • 3D Atlas - 2D Image:
    3D Atlas - 3D Volume:
    • Opacity, Contrast, Brightness, Axis, Flip: mirrors master layer changes
    • Image(s): slave layer is set to proportional image number of master layer (ie: if master layer image is set to 50 of 100 then slave layer is set to image 2 of 4)


Workspace Interoperability

None


Error Handling

Method Object Error Exception thrown Notes
load() File file not found yes java.io.FileNotFoundException
bad file extension yes java.io.IOException
xml error yes java.lang.Exception


DarenLee? - 27 Apr 2009

3DVolumes   29 Apr 2009 - 21:14 - r1.4   DarenLee
Table of Contents


3D Volume rendering plugin


User Manual



Introduction

The 3D volume rendering plugin allows the user to view and manipulate volume image data, such as MR and CT, in the three orthogonal planar views. The user can interactively select the plane coordinates of any of the orthogonal views.

Getting Started

To open a file using the 3D volume rendering plugin

  1. Open the Viewer Workspace.
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. In the Layer Controls, open the dropdown menu to the right of the Open File button.
  4. Select 3D volume(s). An open file dialog box appears. Navigate to and select the file(s) you want to open (multiple selection allowed using Shift+Left-mouse-click). Click Open. If successful, the opened 3D volume(s) will appear in the target viewport and layer GUI controls are added to the Layer Controls panel.

To open an object from the cart

  1. Open the Viewer Workspace.
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. Open the Cart Manager.
  4. Select the cart object(s) you want to open (multiple selection allowed using Shift+Left-mouse-click).
  5. In the Cart Manager, select the dropdown menu to the right of the Open button.
  6. Select 3D volume(s). If successful, the opened cart object(s) will appear in the target viewport and layer GUI controls are added to the Layer Controls panel.

File Formats supported

The 3D volume plugin was designed to support any of 3D volume formats that can be opened with ImageJ. So far, the following file formats have been verified to open correctly:

  1. Analyze image
  2. NifTI image
  3. TIFF stack
  4. URLs with MIME type "image/analyze"

Cart objects supported

  1. derived classes of Volume3D

User interface

  • GUI controls
    • Show/Hide: button to show/hide the layer in the viewport
    • Opacity: slider/spinner to adjust the opacity of the layer
    • Image(s): slider/spinner to cine through multiple images of the current axis
    • Contrast: slider/spinner to adjust the image contrast
    • Brightness: slider/spinner to adjust the image brightness
    • Axis: radiobutton group to select the current axis to view
    • Flip: buttons to flip the images in the X,Y,and Z axes
    • Expand/Collapse: button to expand/collapse the GUI controls
    • Colormap: combobox to select colormap to apply to data

  • Keyboard controls
    • Left/Right Arrows: Previous/Next image
    • Up/Down Arrows: Opacity Increase/Decrease

  • HUD Thumbnails
    • When a 3D Volume layer is selected, a heads-up-display (HUD) is overlayed in the viewport that shows the three orthogonal view thumbnails for the currently selected planes. Left-mouse-click and drag inside any of the orthogonal thumbnail views will change the currently selected plane to view.

  • Status Bar: When the layer is selected, a status bar is displayed on the bottom of the viewport that shows:
    • Name of the layer (top-left)
    • Image dimensions of the current axis (top-right)
    • Image coordinates relative to the bottom left corner of the current image (bottom-left)
    • Current slice number for each dimension (bottom-right)

  • Display scale
    • When the layer is selected, the scale measurements in real physical dimensions are overlayed in the upper right hand corner of the current viewport.


Functional Specification



Data input methods

Input Method Supported Notes
loading from file yes  
loading from the cart yes  
adding a layer no  


Serializing/deserializing

In the serialization process, following states are stored:
  • Translation
  • Rotation
  • Scaling
  • Opacity
  • Brightness
  • Contrast
  • Active image index for each axis (Transverse, Sagittal, Horizontal)
Deserialization process restores values for all the above states.


Linking

  • 3D Volume - 3D Volume: using the GUI controls, keyboard controls, and HUD thumbnail controls in the master layer will change all the corresponding controls in the slave layers.
    • Image(s): slave layer is set to proportional image number of master layer (ie: if master layer image is set to 50 of 100 then slave layer is set to image 2 of 4)
  • 3D Volume - 2D Image:
    3D Volume - 3D Atlas:
    • Opacity, Contrast, Brightness, Axis, Flip: mirrors master layer changes
    • Image(s): slave layer is set to proportional image number of master layer (ie: if master layer image is set to 50 of 100 then slave layer is set to image 2 of 4)


Workspace Interoperability

None


Error Handling

Method Object Error Exception thrown Notes
load() File file not found yes java.io.FileNotFoundException
unrecognized or bad format yes java.util.zip.DataFormatException
load() Volume3D URL syntax error yes java.net.MalformedURLException
URL not found yes java.net.UnknownHostException
URL connection error yes java.io.IOException
HTTP page not found yes java.io.IOException


DarenLee? - 26 Apr 2009

3Dto3D   02 May 2006 - 01:43 - NEW   JylBoline
Discuss methods and issues of 3D to 3D registration
3dvolumeDM   31 Aug 2006 - 01:10 - r1.5   JylBoline
People: Yoni, Maryann, Allan, Seth, Alexandra, Jeff

Suggested plan for outlining a Common Data Model (by August 25)
  • Identify data sources
  • Investigate if these APIs already exist
  • Investigate if any wrappers already exist for desired data sources
  • Develop 2 use case scenarios for potential 3D volume user: 1 simple, 1 complex
  • Outline a common Data Model and present to the DF and Atlasing groups, Vadim, and Ilya

Supporting Documents

Group Recommendations
ABANeuroCommonsProject   03 May 2007 - 23:16 - r1.5   QueenieNg

Objective: To integrate the NeuroCommons Google Map API ABA demo into MBAT and if successful, use this same method for other types of data

CONCEPT

Query Initiation:
  1. Provide a user with a context-sensitive menu (i.e. right-click on Windows; CNTL-click on Mac) over a gene "painted" image overlaying microarray data on our atlases.
    • That menu enables a user to select a related 2D data set based on metadata run against the ABA RDF repository such as:
      • Gene Symbol or name
      • Slice orientation if both are available (sagittal or coronal)
      • Brain region (once NeuroCommons has finished populating their map of which sections cut through which ABA atlas brain region volumes)
      • Additional categories such as project or imaging type for data from other sources
  2. The conceptual global query interface may be used to generate a query in a similar manner as above

Return to Query:
  • With the returned collection of ImagePyramid URLs, MBAT will present a Java browser using the NeuroCommons Google Map JS code
    • Initially defaulting to the median section in the series (coronal or sagittal)
    • Later want to connect this with our atlasing infrastructure
  • Add to the current Google Map widgets a slice-axis slider to enable the user to select other section image pyramid sets ("stained" & "expressed").
    • This widget would simply enable the user to navigate across the list of section URLs (ImagePyramid URLs in Alan R's ABA ontology) for a given sectioned brain (coronal or sagittal) for a given gene.
    • We could also enter a "Slice Axis" toggle button (for those 4000 brains where ABA has both coronal & sagittal) to enable a user to flip between the two views.



General Plan:

  • Other zoomified 2D datasets
    • Alan's MBF Virtual Slice Data
    • CCDB/NCMIR large scale brain mosaics
    • MBL high-resolution scanned image

  • Use these within the Google Map AJAX/JS code in MBAT

Technical decisions include:

  1. Determine which Java library provides the best Java HTML browser class
  2. How to integrate instantiating that class in response to the user right-clicking on a gene name (or brain region)
    • including how to send the appropriate ABA zoomify image set URL into the JS code.
    • This particular task will be much easier once we have a Portal version of MBAT (WOMBAT), since then you'd simply have a Servlet/JSP page that contained the JS code and you could use various AJAX libs built for use with the Apache Tomcat Servlet container and Struts framework.
  3. how to slip that window seamless into MBAT

link to NeuroCommons homepage


Workflow (as of 04/07):

  1. SARPQL examples written by Bill
  2. ABA architecture overview by Queenie includes diagram and tasks and required skills:
    • architecture diagram from Queenie:
      architecture overview by Queenie
    • Tasks and the required skills:
      • TWriting code to access ABA Server using SPARQL through web services from Virtuoso Server or through Jena ARQ API.
        • Use pre-defined SPARQL with the valid ontology terms to query from the repository.
        • Skill set: SPARQL (like SQL)
      • Writing java code to parse the SPARQL output data, and populate the image to the browser using Google MAP API.
      • Integrate with MBAT
        • Skill: Java, and familiar with MBAT architecture.
  3. Middle layer object searching NC written by Queenie
  4. This design was evaluated in the context of the general concept based queries (discussion under 4/6/07) and it seems it should fit nicely with this approach



AHM2006Presentations   12 Dec 2006 - 18:35 - r1.5   JylBoline
AHMMeetingMinutes20090521Discussion   21 May 2009 - 23:27 - NEW   DarenLee

Meeting Minutes of MouseBIRN? AHM

21 May 2009

Attendees

  • Main., Main., Main., Main.

1. Critiques

  • More detailed instructions for installing prerequisites (ie: Java 6)
  • How to get started documentation/training video
  • "Go" buttons on upper left rather than lower right

2. Feature requests

  • Atlas painting: vector of numerical values, vector of lables/ids
    • ABA delineations
  • Teaching wizard (demo/teaching mode)
  • User preferences for disabling plug-ins/"my mbat"
  • Sample workspaces from "expert" (ie: geneticist, neuroscientist, etc)
  • Add annotation/markups to workspace for publication/sharing/etc.
  • Extend datatypes from imaging to genetics, textual, etc.
  • point counting (measuring volume)
  • co-variance and variance among strains paint to atlas
  • passing data out of MBAT to tools like MATLAB
  • connectivity data (BAMS)
  • anatomic information, gene information, connectivity, and numerical
  • subtraction/differences
  • projection maps of injection sites

Back to: ProgrammerMeetingsMinutesMay2008AHM

-- DarenLee - 21 May 2009

Discussion

AIDBDataUpload   06 Mar 2008 - 19:13 - r1.2   QueenieNg

Software Requirement:

  1. Python 2.5.1
  2. PythonXML module
  3. sudo account

AIDB upload script checklist:

  1. Install Python on the linux/Mac platfor
  2. Install PyhonXML module, download it from http://sourceforge.net/project/showfiles.php?group_id=6473
    1. Untar file
    2. After the installation completes,
      1. set environmental variable PYTHONPATH to the directory that contains "_xmlplus"
      2. then start python interactive mode by typing >> Python
      3. type in >> import sys >> import xml >> import xml.xpath
      4. press return.

Upload data

  1. If you have a more updated version that downloaded from CVS, run

    >>./ReInstall.sh

    otherwise, run

    >> ./Install.sh

  2. Edit ConfigureSite file, to make sure all the entries are present. The entries should be similar to the following:
    ScriptInstallDir="/Users/me/aidb/uploader"
    Institution="loni"
    InstitutionID=7
    TempDIR="/Users/me/aidb/uploader/temp"
    DBHost="bcc-stage-00.nbirn.net"
    DBPort=1521
    DBInstance="hiddev"
    DBUser=""
    DBPass=""
    User=""
    UseCXOracle=0
    UserName=""
    HostString="bcc-stage-00.nbirn.net:1521:hiddev"
    HIDPRD=""
  3. Navigate to the installed directory, and run the following:
    1. Add protocol and subject group information to the database.
      ** Note: You should only ever have to do this once, unless the project setup file changes.

      >> sh AddExperiment2HID.sh

    2. Configure Scanners and Behavior Equipment you use for this phase of data collection.

      >> sh ScannerInfo.sh

    3. Create an image directory structure.

      ** Note: you need to make sure all the image data for a visit is available from a single directory tree.
      The root of this tree will have several subdirectories, each corresponding to an anatomical or
      functional scan. Inside each subdirectory should be the image data in whatever format your scanner
      produces.
      Example
      MRI study in DICOM format collectin a T1, T2, and a proton density image
      Image Directory Structure:
      /t1/*.dcm
      /t2/*.dcm
      /pd/*.dcm
      t1, t2, pd are arbitrary names we pick, you can use any name that is relevant to your experiment.

    4. Create an upload .xml file storing Subject and Visit information

      ** Note: Once you have created the image directory structure, create a new upload XML file for the visit you
      are uploading. You should base this on the file FBIRNSubject2007TE_Template.xml in the upload script
      directory. Do not change the "nameStandard" fields! Make sure to enter info for all fields, especially
      "sliceorder" and "discacqs". There are comments in this file to help you along. The template file is
      set up to do a "Local-SRB" upload, i.e. it will maintain a local copy of what it is uploading to the
      SRB. This is a good idea. If you absolutely don't have space, you can change this to "SRB".

    5. Add visit, segments, study, series information to database

      >> sh AddVisit2HID.sh SubjectVisit.xml

    6. Upload image data to SRB

      >> sh Upload.sh /Volumes/Supersize/BXD-exp/BXD (series must be under the bxd file)
      ../ImageWrapper.xml
      ../<temp directory>

FAQ

  1. Q. If you get the error: ImportError: No module named xpath after entering import xml.xpath when running python in interactive mode.

    1. You need to install PythonXML module. Make sure to set the enviornment variables PYTHONPATH to the directory that contains "_xmlplus".

AllenBrainAtlasABA   27 Apr 2009 - 17:00 - r1.2   QueenieNg
Table of Contents


Allen Brain Atlas (ABA) data source plugin


User Manual



Introduction

The ABA data source plugins allows the user to query the publicly available Allen Brain Atlas database (http://www.brain-map.org) and retrieve the images hosted on their website.

Getting Started

To access the ABA data source plugin

  1. open the Search Workspace
  2. switch to the query term subworkspace by selecting Search > By query terms in the menu bar


Functional Specification



Search and Data types

The ABA data source plugin supports the following search types:

  1. Search by query terms

The ABA data source plugin returns the following type of data:

  1. ABAImageSeries (derived from Image2DSeries)


Supported Query Terms

Group Parameter Value Supported Notes
Experimental Info Project any no  
Keyword (Project) no  
 
Gene/Molecule Gene Attribute Gene Symbol yes  
Gene Name yes  
Gene Name yes  
Protein no  
Keyword yes  
 
Subject/Organism Species Mouse yes  
Strains any yes  
C57BL yes This is the default value
129s6 yes  
A/J yes  
B6D2F1 yes  
BALB/c yes  
CBA yes  
C3H yes  
DBA yes  
FVB yes  
Developmental Stage adult yes This is the default value
embryonic yes  
fetal yes  
neonate/infant yes  
child/pup yes  
juvenile yes  
Sex any yes  
female yes  
male yes  
other yes  
 
Anatomical Area/Tissue Anatomical Area/Tissue any yes  
CNS (tree) yes  
Other Body Part yes  


Annotations

For the ABAImageSeries, the following annotations are listed:

  1. Area
  2. Gene
  3. Gene Name
  4. Group
  5. Num Images
  6. Plane
  7. Sex
  8. Stage
  9. Stain Type
  10. Strain
  11. nbci nucleotide


Credentials

No credentials are required to query the ABA database.


Database Connection Type

HTTP


Workspace Interoperability

  • Comparison Viewer Workspace
    1. Open and visualize data using built-in 2D image plugin


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  
searchByQueryTerms() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


DarenLee? - 23 Apr 2009

AlzheimerDM   10 Oct 2005 - 19:16 - r1.2   JylBoline

Alzheimer’s Disease, Tet-off APP Transgenic Mouse Model

Alzheimer's disease is thought to arise from the accumulation of a small peptide termed amyloid-beta that is normally found in healthy individuals, but is abnormally abundant in the brains of AD patients. The peptide aggregates into extracellular lesions or amyloid plaques that are found throughout the hippocampus and cortex of affected individuals. Both amyloid pathology and the cognitive decline associated with AD can be recreated in transgenic mouse models for the disease. Mice overexpressing the human amyloid precursor protein (APP) with mutations identified from families with inherited AD generate high levels of amyloid-beta and form amyloid plaques similar to those used found in the brains of patients with AD.

The mouse BIRN will examine a transgenic mouse model for AD in which the expression of APP can be controlled with antibiotic treatment. We anticipate that this controllable transgenic mouse model can be used with MRI and the other methods employed by collaborators in the mouse BIRN to study the long-term kinetics of amyloid lesions in the brain under conditions similar to those expected from future AD therapies.

AnaForumWorkSpace   27 Apr 2006 - 00:45 - r1.2   JylBoline
jboline - 25 Jan 2006

There has been a suggestion for how several different atlas conventions could be created, accessed, and viewed on the Visualization page. It would essentially be a semi-wiki type page that could be accessed by the MBAT tool. This would allow users to create, edit, visualize, and comment on several different types of atlas conventions. In addition, the users would be able to create structural hierarchies in conjunction with their atlases.

Related Working Pages

AnimalImagingDatabaseAIDB   01 May 2009 - 22:36 - NEW   WilliamSeto
Table of Contents


Animal Imaging Database(AIDB) data source plugin


User Manual



Introduction

The AIDB data source plugins allows the user to query the publicly available Animal Imaging Database.

Getting Started

To access the AIDB data source plugin

  1. open the Search Workspace
  2. switch to the query term subworkspace by selecting Search > By query terms in the menu bar


Functional Specification



Search and Data types

The AIDB data source plugin supports the following search types:

  1. Search by query terms
  2. Search by keyword

The AIDB data source plugin returns the following type of data:

  1. Vector (derived from AIDBScanProduct that is converted to AIDBVolume derived from Volume3D)


Supported Query Terms

Group Parameter Value Supported Notes
Experimental Info Project any yes  
Keyword (Project) yes  
 
Gene/Molecule Gene Attribute Gene Symbol yes  
Gene Name yes  
Protein yes  
Keyword yes  
 
Subject/Organism Species Mouse yes  
Strains any yes  
C57BL yes  
129s6 yes  
A/J yes  
B6D2F1 yes  
BALB/c yes  
CBA yes  
C3H yes  
DBA yes  
FVB yes  
Developmental Stage adult yes  
embryonic yes  
fetal yes  
neonate/infant yes  
child/pup yes  
juvenile yes  
Sex any yes  
female yes  
male yes  
other yes  
 
Anatomical Area/Tissue Anatomical Area/Tissue any yes  
CNS (tree) yes  
Other Body Part yes  


Annotations

For the AIDBVolume, the following annotations are listed:

  1. Organ
  2. Preferred Display Image URL
  3. Preferred Display Thumbnail Image URL
  4. Recon Datafile URL
  5. Region
  6. Scan Product Type
  7. Species
  8. Structure


Credentials

No credentials are required to query the AIDB database.


Database Connection Type

HTTP


Workspace Interoperability

  • Comparison Viewer Workspace
    1. Open and visualize data using built-in 3D volume plugin


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  
searchByQueryTerms() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


WilliamSeto? - 01 May 2009

AtlasShouldHaves   15 Jul 2005 - 22:48 - NEW   JylBoline

A mouse brain environment

Should have

- a system of coordinates which can be related to a reference coordinate system (Paxinos & Franklin)

- a reference atlas or brain image

- a map: a labeled atlas or brain image (closed contours corresponding to neuroanatomical structures)

- a way to compare a particular data set to the atlas (side by side scrolling or overlay)

Can have (static) information

- animal: species, strain, ID, age, sex, weight, behavioral and/or anatomical and/or physiological phenotype, normal or wild type or control vs model of disease (stage of disease, phenotype), in vivo versuss ex vivo, animal preparation, whole or part imaged

- image modality

-acquisition parameters or staining

-resolution in plane between planes

-location: plane orientation and position, position in plane

-image intensity and or corresponding parameters (T1,T2, cell density, receptor density, uptake)

-image preprocessing if any (registered, scaled, intensity normalized , parametric map ...)

-associated with other images (for multimodality studies) or with different postprocessing (labeling, etc)

-which labels & synonyms(latin &english name) (ontology)

-rater or labeler (in case there are multiple people processing data in the same way) so interrater analysis can be done

Can provide (dynamic) information

- all images associated with the current one (for multimodality studies) or postprocessing (labeling)

- location and parameters of a point selected by the user

- see same region in some other or in all images associated with the current one

- simultaneous viewing in different windows and /or overlay

- parameters of other images at the same location

- measure distances

- measure SNR, CNR

- label at this location, cell type(s) in label, involvement of structure in normal physiological activity or in disease, volume, variability, connectivity (visualize system), extent

- analysis & studies done on this particular brain

- planar, 3D view

- overlay atlas with current data set

- overlay two data sets

AtlasStateExchange   19 Jul 2007 - 16:47 - r1.2   JylBoline

Things to do here:

  • a) we will send the API and demos around
  • b) review the API and demo communications, to see if it will fit your atlas (Willy and Joshua will help with this)
  • c) review the current representation of "atlas state", to see if it is general enough
  • d) formally describe spatial reference systems we use: e.g. Stereotaxic1 (used at UCLA), Stereotaxic2 (used in UCSD atlas), image1 (used at Drexel)
  • e) define transformations between all coordinate systems, and some canonical stareotaxic system (either Stereotaxic1 or 2)
  • f) create services for converting between the coordinate systems (though for a limited number of coordinate systems just sharing conversion code fragments would be more robust). It is straightforward for some conversions; may be pretty involved when converting from image to stereotaxic. For the latter, we need to have a couple test cases
  • g) create services for format conversion: i.e. between polygons specified as coordinate pairs or triplets, and collections of pixels/voxels (Bill mentioned that they may have appropriate code at Drexel).

Now with respect to ontology - the "semantic reference system" may be handled in a similar way: i.e. when giving a name of a feature must also specify the ontology in which it lives.

2. Ability to search registered images/volumes/segmentations available in other atlases.

  • a) UCSD will send the schema of our spatial registry source
  • b) we need to see how to register 3D volumes and 2D images to such or similar source (using Drexel's alignment/warping tools?), so that the metadata sources can be searched in uniform way.

3. Ability to load images / slices / segmentations into any atlas.

  • a) UCSD will provide sample code for retrieving image fragments from ArcIMS
  • b) UCSD will develop a web service to return feature coordinates (as polygon boundary, as well as label point) given the feature name and set of slices
  • c) let's go first through a manual process of loading each other's images.

Syntax for Atlas Interoperation

http://imhotep.ucsd.edu:7873/trantj/mouse_birn/newXMLFormat.htm

Examples of Syntax and XML schemas for atlas state exchange (as of 6/28/2005)


Continued Work can be found at the 2007 wiki page for Atlas State Exchange

AtlasStateExchange_2007   07 May 2007 - 20:01 - r1.12   AllanMackenzieGraham
See The original page where exchange of Atlas State was started

Overview:

Work resumed at the end of 2006 with a focus on setting up an Atlas Server that can be used in conjunction with the API for atlas exchange. This outlines the step by step plans of the group.

Synopsis of intitial work plans:
Meeting 1/14/07 between Willy, and UCLA:
  • Immediate:
    • Willy will give Allan the origin and define the coordinates of SA in relation to the mouse looking at you
    • Allan will generate the transformations between the atlases and give Willy a transformation for a single Paxinos slice on Tuesday
    • We will meet again next Thursday at 10:30 AM
  • Preparation:
    • Willy will look into a DB where the transformations can be stored and Allan will have access to update them (the plan is to be able to access these transformations through the server web-services)
    • Willy will give Steve the source code for testing access to the server
    • Steve and Heng will begin testing the atlas web-services API sent by Willy and Willy will send basic documentation and a test application for accessing this service

Synopsis of follow up meeting 1/18/07:
Willy, Drexel, and UCLA:
  • There was still some confusion about the coordinates used by the three systems, so to clarify, we went through them all together:
    • Confirmed that all three systems have the brain situated in the coordinate frame in pretty much the same manner (NT Y coordinate may be 5 at Bregma, but it still increases going down into the brain)
    • It’s a little unclear if the coronal planes used in SmartAtlas? are with the animal facing towards us or away from us, but it probably shouldn’t make too much of a difference for how we’ll likely handle the interactions
    • When we pass values of X, we’ll probably stick to absolute values, as most people will want data from both the left and right sides of the brain
  • Next steps:
    • Allan will 10 points in the brain in his atlas and will send the XYZ coordinates as well as the names of the structures that are within those coordinates to Willy, Yoni, and Bill
    • They will verify that this aligns to their atlases
    • Allan will send a single transformation to Willy by tomorrow (probably at Bregma 0)
    • We will use this test transformation for testing purposes as outlined in the previous e-mails.
    • Touch base at next week’s regular programmers VTC

Point X Y Z UCLA UCSD Drexel
1 2.00 4.00 0.02 Cpu    
2 1.79 4.93 0.02 VP VP  
3 0.45 2.62 -3.80 PAG PAG  
4 0.46 5.22 -3.80 Pn Pn  
5 -2.42 3.94 -3.80 PoDG PoDG  
6 0.89 1.74 3.57 EPIA AOL  
7 -0.69 3.58 3.57 GrO GrO?  
8 -3.28 3.92 -5.88 PFl PFl  
9 0.00 4.00 -5.88 4V 4V  
10 1.22 5.61 -5.88 7 7N  
11 2.00 4.00 2.00 LO LO  

2D transformations from Paxinos 2001 to MRI:
Below are the transformations in Montreal Neurological Institute XFM format. The XFM files are text files that can be read in any text editor. Though the transformations are in 3 dimensions, I have edited them to two. I was not able to get the full affine transformation nor the thin plate splines to work in 2D. This transformations are in world coordinates (not voxel coordinates), so in order to use them, you will need the step sizes and starts contained in the mnc file header. If you can't read these mnc files, we've put the relevant information from them below the file download link.

Since the transformation is in world coordinates and works off the Paxinos coordinate system, I expect that simply applying the transformation matrix to Paxinos coordinates should yield the appropriate location in the 2D MRI image. We will have to repeat this for every plate; tedious, but doable.

I used the MNI MINC Tools to align the images and manipulate the transformations. They tools can be downloaded at: http://www.bic.mni.mcgill.ca/software/distribution/

The transformations were produced as follows:

  • Created a 3D volume from the Paxinos mouse brain atlas plates by scanning in the delineations and spacing them with blank planes.
  • Aligned MRI volume to Paxinos volume using Register to calculate a full-affine transformation (12 parameter) by picking fiducial points and Mincresample to apply the transformation and resample into the same voxel space as the Paxinos volume.
  • Separated both volumes in to their component 2D image with Minctoimage and selected Paxinos image closest to bregma (0.02) and corresponding MRI image.
  • Aligned MRI image to Paxinos image using Register to calculate a rigid body (6 parameter) and a 9 parameter transformation by picking fiducial points and Mincresample to apply the transformation (already in the same voxel space as the Paxinos image).
  • Manually edited the transformations to remove Z dimension transformations with Xfm2param and Param2xfm.
  • Inverted transformations so that they convert coordinates from Paxinos atlas to MRI, rather than the other way around, with Xfminvert.

  • PaxinosBregma.mnc: Paxinos Atlas image in MNC format
  • X dimension 606
  • Y dimension 500
  • Z dimension 1
  • X step 0.01818
  • Y step 0.01818
  • Z step 0.01818
  • X start -5.50854
  • Y start -1.21806
  • Z start 0.02

  • Pax2MRI6.xfm: Rigid body transformation (6 parameters, 3 translations and 3 rotations) aligning Paxinos atlas to MRI

  • Pax2MRI9.xfm: 9 parameter transformation (3 translations, 3 rotations, and 3 scales) aligning Paxinos atlas to MRI



Webservice for transformations:
Created by Willy Wong

Paxinos plates transformations:
Created by Allan MacKenzie-Graham
  • Transformations for Paxinos plates 02-93 - 01 and 94 forthcoming.
  • Transformations 95-100 may involve starting from scratch. Paxinos atlas 3D volume was created with the first edition of the atlas.
  • Transformations 02-93


AtlasWishList   09 Aug 2005 - 18:51 - r1.2   MouseBIRN

A mouse brain environment

Should have

- a system of coordinates which can be related to a reference coordinate system (Paxinos & Franklin)

- a reference atlas or brain image

- a map: a labeled atlas or brain image (closed contours corresponding to neuroanatomical structures)

- a way to compare a particular data set to the atlas (side by side scrolling or overlay)

- a relatively simple built-in CNS ontology hierarchical search tool such as the "Expression Pattern Search" builit into Genepaint.org (http://www.genepaint.org)

Can have (static) information

- animal: species, strain, ID, age, sex, weight, behavioral and/or anatomical and/or physiological phenotype, normal or wild type or control vs model of disease (stage of disease, phenotype), in vivo versuss ex vivo, animal preparation, whole or part imaged

- image modality

-acquisition parameters or staining

-resolution in plane between planes

-location: plane orientation and position, position in plane

-image intensity and or corresponding parameters (T1,T2, cell density, receptor density, uptake)

-image preprocessing if any (registered, scaled, intensity normalized , parametric map ...)

-associated with other images (for multimodality studies) or with different postprocessing (labeling, etc)

-which labels & synonyms(latin &english name) (ontology)

-rater or labeler (in case there are multiple people processing data in the same way) so interrater analysis can be done

Can provide (dynamic) information

- all images associated with the current one (for multimodality studies) or postprocessing (labeling)

- location and parameters of a point selected by the user

- see same region in some other or in all images associated with the current one

- simultaneous viewing in different windows and /or overlay

- parameters of other images at the same location

- measure distances

- measure SNR, CNR

- label at this location, cell type(s) in label, involvement of structure in normal physiological activity or in disease, volume, variability, connectivity (visualize system), extent

- analysis & studies done on this particular brain

- planar, 3D view

- overlay atlas with current data set

- overlay two data sets

Atlasing   23 Jan 2008 - 01:16 - r1.2   DarenLee

Atlasing

  • Dynamic atlas labels
AtlasingTOC   02 Mar 2007 - 01:34 - r1.2   JylBoline
AtlasingUseCases   22 Feb 2007 - 15:58 - r1.3   JylBoline

Use Cases



Atlasing Use Cases from Maryann's AtlasIntegration Scenarios document (above)

USE CASE 1:
A researcher selects a region in the Smart Atlas and wants to know: “What genes are expressed in this location and what cells express each?” The first source to be consulted would be microarrays because they would have the largest numbers of possible candidates. However, depending upon the location covered by the microarray, it may not have the spatial resolution required to be certain that it is only targeting the desired location. The results from the microarray can be compared against in situ hybridization tissues to find out what mRNAs and DNA’s are found in this area and the cells that express them. Non-radioactive in situ hybridization has better spatial resolution but isn’t as sensitive as radioactive in situ hybridization. Depending upon the additional information that may be present in a section, e.g., Nissl stain, other counterstains, we may or may not be able to determine the cellular identity of labeled cells. We would then compare the list of genes against the proteins found in the area. Protein maps may yield additional candidates although just because a protein is found there, doesn’t mean that the gene is found there. Comparison of results with a connectivity map might resolve some of the discrepancies. A similar caveat applies to the GCSF: one would have to determine whether the signal is found in cell bodies, dendrites or axon terminals to determine whether or not we would expect the signal to be consistent with the microarray data.

Variations on the above query include: “What genes are expressed at high levels in location X and Y?” What genes are expressed in high levels in location X and low levels in location Y?”


USE CASE 2:
A researcher interested in the Parkinson’s disease model uses the Smart Atlas to investigate patterns of gene expression for genes determined through GeneNetwork to be affected in Parkinson’s disease. These patterns are used to focus investigations of anatomical alterations in the MRM or whole brain histology data available through the LONI or Neuroterrain atlases or retrieved through the Mouse BIRN data federation. Alternatively, changes observed from the MRM data can be used to issue a query in the Smart Atlas for gene expression patterns (or protein expression patterns) that correlate with the observed changes.

Additional Atlasing Use Cases

USE CASE 3:
A researcher is looking at the MDA atlas in MBAT and wishes to look at another atlas for additional information about cell structure in the dentate gyrus. They submit a ROI query in MBAT and pull up the corresponding region in the NT atlas (with the ROI outlined?). Then they would like to see if there are additional sub-divisions of this area, so they pull up the closest corresponding SmartAtlas slice with the ROI delineated. They can then use this to submit a query for any BIRN-accessible datasets (volumes, slices, high resolution EM, microarray, etc.).


USE CASE 4:
A researcher is interested in all BIRN-accessible datasets (volumes, slices, high resolution EM, microarray, etc.) around a nucleus in the cerebellum. They delineate this region in MBAT and submit a query that returns a list of all data from all sources in a format they may visualize using MBAT, a web page, or can download to their desktop.


USE CASE 5:
A researcher is looking at microarray gene expression data they have collected using MBAT. They begin to start examining the microarray data for normals compared to mouse models of Parkinson’s disease. They realize there seems to be something unusual in the caudate/putamen area in relation to gene lcn2. They would like to search the rest of the Mouse BIRN data for any images that:
  1. Show expression patterns for gene lcn2
  2. Were collected to study Parkinson’s disease
  3. Contain the caudate/putamen area
  4. Cell data collected within their delineated region of interest

They would generate this query in MBAT and this would bring up results showing the metadata from all BIRN-accessible data matching this query. They could then visualize the actual data (eventually through MBAT-overlaid on the atlas or their own data) either through a web-page link or they can download the data to their desktop.


USE CASE 6:
A researcher has a series of slices they have collected for an experiment on Schizophrenia. They have found what appears to be a very unusual formation in a part of the brain they are having a difficult time identifying. They decide to register these slices to the NT Atlas so they can visualize it, apply atlas delineations, to it and compare it to other normal datasets.

After registering the data, they use MBAT to access and open this dataset. Then they compare this volume to the corresponding NT atlas and MDA atlas for differences. They then switch off between applying the NT, MDA, and SmartAtlas delineations to it until they have found the most likely explanation for the unusual formation in their dataset.

They then delineate a portion of this area for any high-resolution datasets in normals in this area. They also do a search for any Schizophrenia-related data on the BIRN-accessible datasets.


USE CASE 7:
A researcher has run a query from MBAT for 2D immunohistochemistry slices and finds one of great interest to them that has been registered to Smart Atlas. They wish to examine this image in relation to a 3D volume from a similar experiment and would like to apply atlas delineations to both images. They are able to open both the atlas delineations and the 3D volume in MBAT. Then they are able to open the 2D slice within the appropriate space relative to these two volumes.
AtlasingWorkshopDay   20 Oct 2005 - 22:13 - r1.2   JylBoline
  • Atlas definition:
    • Collection of annotations within a coordinate system (ontological)
    • Canvas on which you pin information including the tools and protocols for integrating the information (functional)
    • Spatially defined data repository-metadata-viewers (structural or content)
    • Space is used as an index for informing search/retrieval + tools for converting different representations of space (main feature)
    • A way to organize the community (social)

This sort of atlas could contain image data, electrophysiological data, behavioral data, etc.


  • Image/atlas visualization: Examined the functionality of the image/atlas visualization of the following
    • SmartAtlas?
    • SHIVA
    • NBIAS
    • MBL and atlases
    • Structural function within Amira

Discussion about what is going on for SFN vs. what we want in the long term. Discussion of how to make things interoperable and what that means. Debate between portal and stand alone version.

  • Bill: Registration pipelines by Drexel
  • Processing pipelines/workflows using neuroterrain. Specialized for MBL
    • Platform independence (linux, osX, old Mac)
    • Network authenticated/network based
    • Defining (ontologically) a pipeline
    • Must be database driven
    • Mostly automated (80-90%) must accommodate manual too

  • David: Registration Pipeline by LONI
    • Modular and put things together for a particular type of data.
    • Processing on remote host or locally
    • Grid enabled
    • Technical

Discussion of what happens with these registration tools in the future:

    • This would be behind the scenes and viewable to the user as some sort of wizard, including tools that tell you what is going on and what has been done with your data to get your results.
    • Giving the potential for a user to put their data into the viewer and have a rough estimate of what their data looks like relative to the atlas.

  • Seth: Edinburgh tools showed some of the functions of EMAG and EMAP:
    • Atlases of embryos at different days (browses their database)
    • Can browse by gene, by region, by structure, by stage, by expression (or not expressed)
    • Gene information that is available at those days, and by structure, and can call up images that show what genes are available from your query
    • Predefined regions are used as a search or you can paint a new region. Clicking a region drives a query
    • Similar type of interface, plus links to images, ontologies, pubmed

Next couple of years, Rob would like to see the iScope stacks added to the BIRN infrastructure (iScope shows tissue on a microscope, and acts both as a client and server), creates Z axis movies, and can be registered to the larger 2D images. Shows the fine-grained histology from that area. Potentially embed some functionality into an atlas to find these image stacks and do some cell counting.

The other stuff is really necessary to drive these things… What can or can’t be done will written up by Bill and Willy. Bill: Data: MBL aligned to Drexel, and in SRB

Data set for SFN, and protocols

BIRN2005AHM   29 Nov 2005 - 01:54 - r1.10   JylBoline

Mouse meeting presentations

Minutes from mouse day

Atlasing workshop day at the BIRN AHM

Click here for notes from the meeting

Other meeting presentations

Overview slides of science by the testbeds

Mouse Human Integration Strategy Session



Link to the wiki site about the planning of this meeting (on the Morph BIRN wiki). http://www.na-mic.org/Wiki/index.php/BIRN_All_Hands_Meeting_2005



BIRNQueries   18 Jun 2007 - 18:20 - r1.7   JylBoline

First drafts for a general way to group all BIRN data for query (also ties in with data upload). Started 2/7/07

Link to the metadata working page: for work on mapping different data sources and types into this concept-based query (related to data upload)

More specific ideas based on data type or other query requests



Mock up of potential UI by Zai Chang 2/2007:

mock up of potential UI, 2/2007

Next Steps:

4/6/07
  • MBATminutes4_6_07doc.doc: minutes for next plans by UCLA group
  • Want Query interface to have the following properties:
    1. Want the interface to query across datatypes and sources to come back with a synopsis of how many data-types are available from the different sources (or in the different data types). An overall review of what sort of data fits the query
    2. Then the user would filter and select from these return results (through a text-based interface-perhaps with a thumbnail pop-up) and save data of interest to a “shopping cart”
    3. From this shopping cart, the user would then be able to download it or immediately visualize it (may or may not be in MBAT)
  • Determined this query interface needs to access a "metadata" database (as previously outlined by Ilya-perhaps provided by the mediator to some extent). See schema suggested by Queenie for this DB metadata_DB.bmp.


BioAspectsAtlasing   25 Apr 2006 - 23:39 - NEW   JylBoline

Planning

  • Atlas workgroup meetings dealing with biological aspects of atlasing

Working Pages

BioOntologyBibliography   28 Jan 2006 - 02:04 - r1.11   MouseBIRN

Bio-Ontology References

Onto-centric Views of Biological Knowledge: some useful examples

The following research articles provide excellent, concrete examples of ontological engineering in biological knowledge domains directly relevant to Mouse BIRN research efforts. They each focus on a different aspect of how extended semantic formalisms can be used to represent complex and highly integrative scientific knowledge relevant to the biological questions being addressed by various Mouse BIRN projects. If one disregards for the present the issue of whether such complexity is achievable and/or useful at this stage in the evolution of Mouse BIRN, these papers prime value is in their cogent, logical deconstruction of biological examples where onto-centric data management & access methods can provide significant added value.

Authors YoP Title Citation
Aitken S. 2005 Formalizing concepts of species, sex and developmental stage in anatomical ontologies. Bioinformatics. Jun 1, v21, n11, p2773-9. Epub 2005 Mar 29
Barry Smith, Werner Ceusters, Bert Klagges, Jacob Köhler, Anand Kumar, Jane Lomax, Chris Mungall, Fabian Neuhaus, Alan L Rector and Cornelius Rosse 2005 Relations in Biomedical Ontologies (Method). Genome Biology, 6:R46, April 2005 (doi:10.1186/gb-2005-6-5-r46).
Jonathan Bard 2005 Anatomics - The intersection of anatomy and bioinformatics. J Anat., v206, n1, p1-16, Jan. 2005.
Nicki Tiffin, Janet F. Kelso, Alan R. Powell, Hong Pan, Vladimir B. Bajic and Winston A. Hide 2005 Integration of text- and data-mining using ontologies successfully selects disease gene candidates. Nucleic Acids Research, v33, n5, p1544-1552.
Gangemi A, Catenacci C, Battaglia M. 2004 Inflammation ontology design pattern: an exercise in building a core biomedical ontology with descriptions and situations. Stud Health Technol Inform., v102, p64-80.
Natalya F. Noy, Daniel L. Rubin, and Mark A. Musen. 2004 Making Biomedical Ontologies and Ontological Repositories Work. IEEE Intelligent Sys., Nov/Dec 2004, p78.
Songmao Zhang, Peter Mork, Olivier Bodenreider. 2004 Lessons Learned from Aligning two Representations of Anatomy. Proceedings of the KR 2004 Workshop on Formal Biomedical Knowledge Representation.
Amarnath Gupta, Bertram Ludascher, Jeffrey S. Grethe, Maryann E. Martone. 2003 Towards a formalization of disease-specific ontologies for neuroinformatics. Neural Networks, v16, p1277-1292.
P.K. Tulipano, W.S. Millar, and J.J. Cimino. 2003 Linking Molecular Imaging Technology to the Gene Ontology (GO). Pacific Symposium on Biocomputing v8, p613-623.
C.J. Wroe, R. Stevens, C. A. Goble. 2003 A Methodology to Migrate The Gene Ontology To A Description Logic Environment Using DAML+OIL. Pacific Symposium on Biocomputing 8:624-635.
B. Smith, J. Williams and S. Schulze-Kremer. 2003 The Ontology of the Gene Ontology. Proceedings of the Annual Symposium of the American Medical Informatics Association, Washington DC, November 2003, 609–613.
David P. Hill, Judith A. Blake, Joel E. Richardson, and Martin Ringwald. 2002 Extension and Integration of the Gene Ontology(GO): Combining GO Vocabularies With External Vocabularies. Genome Research, v12, p1982-1991.
Robert E. Marc and Bryan W. Jones. RobertMarcJN2002.pdf 2002 Molecular Phenotyping of Retinal Ganglion Cells. Journal of Neuroscience 22(2):413-427
Robert Stevens, Chris Wroe, Sean Bechhofer, Phillip Lord, Alan Rector and Carole Goble. 2002 Building ontologies in DAML + OIL. Comp Funct Genom, v4, p133–141.


Bibliography of Tools For Curation, Searching & Data Mining with Semantic Bio-ontologies

[Listing In Progress]


Journals In Which One Typical Will Find Research Articles on Biomedical Ontologies and Onto-centric Data Mining

Journal Title Publisher
Artificial Intelligence in Medicine Elsevier, Inc.
Bioinformatics Oxford University Press
BMC Bioinformatics BioMed Central
Comparative and Functional Genomics John Wiley & Sons
Genome Biology BioMed Central
Genome Research Cold Spring Harbor Press
IEEE Intelligent Systems IEEE Computer Society
In Silico Biology (ISB) Bioinformation Systems e.V
Journal of Biomedical Informatics Elsevier, Inc.
Neuroinformatics Humana Press
Nucleic Acids Research Oxford University Press
Studies in Health Technology and Informatics IOS Press

BioOntologyConferences   15 Jul 2005 - 18:45 - r1.5   MouseBIRN

Meetings and Conferences With a Focus on the Curation and Use of Bio-ontologies

Meeting Description
Bio-ontologies Special Interest Group at the annual Intelligent Systems in Molecular Biology (ISMB) Conference, June 23 - June 28, 2005, Detroit, MI, USA
Text Data Mining Special Interest Group at the Intelligent Systems in Molecular Biology (ISMB) Conference
Standards and Ontologies for Functional Genomics (SOFG) 2004 Conference, Oct 23 -26, 2004 - University of Pennsylvania School of Medicine, Philadelphia, PA, USA
4th European Conference on Computational Biology (ECCB), Sep 28 - Oct1, 2005, Madrid, Spain
Pacific Symposium on Biocomputing, Jan 3 - Jan 7, 2006, Maui, HW, USA
Plant and Animal Genome XIV Conference, January 14-18, 2006, San Diego, California
Network of Excellence Semantic Interoperability and Data Mining in Biomedicine and the Working Group 6 of the International Medical Informatics Association (IMIA)
National Center for Ontological Research, National Center for Geographic Information and Analysis, Department of Philosophy, University at Buffalo
Formal (Bio)Medical Knowledge Representation Working Group of the American Medical Informatics Association (AMIA)
MIE 2005: XIX Annual Internation Congress of the Federation of European Medical Informatics, Aug 28 - Sep 8, 2005, Geneva, Switzerland
European Society for Artificial Intelligence in Medicine (AIME)
Protégé (Stanford Medical Informatics at the Stanford University School of Medicine)
  • Free, Open Source Ontology Editor and Knowledge-base Framework
BrainGraph   08 Mar 2006 - 23:32 - NEW   HengYuan
heng - 08 Mar 2006

BrainGraph

History

BrainGraph was originally developed by Ivo using GML format using a graph display. Then Fotios Konstantinidis developed a HyperTree? viewer. Ivo's LONI LOVE program has the ability to read and display BrainGraph files in GML format. Then Allan et al wanted it to be in XML format, and Heng made the conversion. Shiva and MBAT can read in XML format of the BrainGraph.

XML Format (.bgx)

As the BrainGraph name implies, it is a direct graph. It contains both nodes and edges. Nodes are individual structures, and edges specify the relationships among the structures. Typically the relationship (and currently the only one) is the anatomical containment relationship.

A simple over view of the file format contains the following:

<braingraph atlas="Swanson1998">
    <label index="20" abbreviation="BR" name="Brain" color="#808080" />
    <label index="22" abbreviation="CH" name="Cerebrum" color="#7fff00" />
    <edge relationship="anatomical containment" head="20" tail="22" />
</braingraph

<braingraph> is the document tag and thus required. atlas is the name of the atlas and required.

<label> is is a node in the graph representing a structure. index is the unique index value of the structure. abbreviation is the abbreviation of the structure and name is the full name of the structure. color field is for viewing purpose and is required.

<edge> describes a relationship between two structures. It is directed, and hence head and tail attributes, which are the index value of the structures of the interest. Currently, the only relationship interpreted is "anatomical containment".

Heng is working on to bring in the following tag:

<meta> which is used to contain meta data, which gives BrainGraph authors the ability to make note on the file. It is in the following format:

<braingraph atlas="Swanson1998">
    <meta>
        <author>Allan</author>
        <date>Jan 1, 2004</date>
        <description>...</description>
        <!-- and other texts in any invented tags -->
    </meta>
    ...
</braingraph>
BrainGraphEditor   09 Jan 2008 - 00:37 - NEW   JylBoline
Documentation for BrainGraph Editor
BrainGraphViewer   31 Mar 2009 - 19:53 - r1.10   SteveAnderson
Table of Contents


Hierarchy Viewer

Desired Features

  • Multiple parents per node
  • Multiple root nodes
  • File Formats (mbManagerIO)
    • ILF/BGX (only supports single parents)
    • OBO
  • Multiple instances
  • Multiple atlases and multiple braingraphs (ie: mbGraphListeners)
  • Initiate search from mbGraphPanel


Requirements Specifications

  • Items in italics still undefined

Atlas   mbGraphPanel events
Radial Tree
Single selection
(left double-click)
(structure highlight)
mbGraphEvent(NODE_CLEAR & NODE_ADD)
--> Node-only highlight*
(don't highlight descendants)
Gray-out all other nodes to match Viewer
(re-anchor)
Multiple selection
(shift + left double-click on unselected structure)
(structure(s) highlight)
mbGraphEvent(NODE_ADD)
--> Multiple Node highlight*
(no re-anchor)
Gray-out all non-selected nodes
Toggle Selection
(shift + left double-click on selected structure)
(structure unhighlight)
mbGraphEvent(NODE_REMOVE)
--> Multiple Node highlight*
Gray-out non-selected nodes
(no re-anchor)
Reset
(left double-click on non-structure)
mbGraphEvent(nodeID=0)
--> Revert to original colors
Structure highlight < -- Node selection
(left double-click node)
(Node/Neighbor highlight*)
mbGraphEvent(NODE_CLEAR & NODE_ADD)
If ancestor node, highlight all descendants
Gray-out all other nodes
Structure(s) highlight < -- Multiple node selection
(shift + left double-click unselected node)
(Node/descendant highlight*)
(no re-anchor)
mbGraphEvent(NODE_ADD)
If ancestor node, highlight all descendants
Structure unhighlight < -- Toggle node selection
(shift + left double-click selected node)
(Node/descendant unhighlight)
(no re-anchor)
mbGraphEvent(NODE_REMOVE)
Reset < -- Reset
(left double-click in empty area)
(clear selected nodes)
mbGraphEvent(nodeID=0)
None   Node/descendant highlight*
(left single click on node)
(re-anchor)
None   Pop-up menu-> Search workspace
(right-click in empty area)
mbGraphEvent(NODE_LIST)

  • Node/Neighbor highlight:
    • color change
      • selected node color
      • neighbor node color
      • edge color
      • unselected nodes turned grey/lower intensity
    • border change
  • Resize behavior
    • always zoom out on node select?
    • set anchor to center of panel
  • Group node
    • represents conceptual grouping (ie: nervous system contains spinal cord, optic lobe, eyes, etc.)
    • need to identify in XML
BuildInstructions   08 Dec 2008 - 20:35 - r1.11   DarenLee
Table of Contents


MBAT 3.0 Build Instructions

If you are using Eclipse then all the configuration and build scripts should automatically compile, archive the plugins, and copy them to the appropriate locations. However, after initially importing or making clean, some of the build.xml may not work correctly due to project dependencies. Hence, it is recommended you follow the manual instructions below after an update or make clean.

Instructions to manually build and configure the entire source repository are given below.

Eclipse Builders

By default, many of the MBAT Eclipse projects are configured to automatically run the Ant build.xml during an auto-build. To disable this feature:

  1. Right-click on the Project -> Properties. Select "Builders" in the left panel tree view. Unselect the build.xml builder from the Builder list.

To build the projects, you must the manually run the Ant build.xml scripts as described below.

MBAT 3.0 Plugin Directory Structure

If you are using another IDE, then make sure the plugins are copied to the plugins folder with the following directory structure:

     plugins/
         mbRegistration/
         mbSearch/
         workspaces/
Also, when running the executable, make sure the working directory is at the same directory level as the plugins folder. For example, in the Eclipse configuration, the plugins are located in mbat/dist/plugins and the working directory is mbat/dist.

MBAT 3.0 build.xml scripts

In order to build and run mbat3.0, the workspaces and their plugins must be built in the following order due to dependencies. The included build.xml files automatically copy the files to the listed pre-defined locations. To run the ant build, navigate to the build.xml file in the src folder, right-click, choose "Run As"->"Ant Build...". Once you run it once it will be added to the list in the "Run As" shortcut in the toolbar.

  1. mbRegistration
    1. run mbRegistration build.xml (copies mbRegistration.jar to mbWorkspacePlugins\plugins\net.nbirn.mbat.plugins.workspace.Registration\src\lib)
    2. run mbRegistrationPlugins build.xml (copies plugins to mbat/dist/plugins/mbRegistration)
  2. mbSearch
    1. run mbSearch build.xml (copies mbSearch.jar to mbWorkspacePlugins\plugins\net.nbirn.mbat.plugins.workspace.Search\src\lib)
    2. run mbSearchPlugins build.xml (copies plugins to mbat/dist/plugins/mbSearch)
  3. mbViewer
    1. run mbViewer build.xml (copies mbViewer.jar to mbWorkspacePlugins\plugins\net.nbirn.mbat.plugins.workspace.Viewer\src\lib)
  4. mbWorkspacePlugins
    1. For Eclipse, refresh (F5) mbWorkspacePlugins project (reloads the any required jar libraries in src\lib\ )
    2. run mbWorkspacePlugins build.xml (copies plugins to mbat/dist/workspaces)

General build dependency rules:

  1. If you update a tool plugin (ie: a registration method), then you need to run the build.xml for that module (ie: mbRegistration).
  2. If you update a workspace plugin (ie: mbSearch), then you have to run the build.xml for that module (mbSearch) and the workspace plugins (mbWorkspacePlugins).

Note: The Ant build.xml files are used only to copy and package the plugin files. Although some build.xml files have "compile" targets, they are currently experimental and not always maintained.


Running MBAT 3.0

The main() function is located in:
  • project: mbat
  • source folder: src/mbat_src
  • package: net.nbirn.mbat.applicationNEW
  • class: mbMain.java

To run:

  1. Navigate to mbMain.java, right-click, choose "Run As"->"Java Application"
  2. If the application fails to find the plugin folder, configure the run working directory


Running workspace clients for testing

Each workspace contains standalone clients for testing and debugging. The Main.java class is found under the net.nbirn.mbat.*.client package for that workspace (ie: net.nbirn.mbat.registration.client.Main).

To run:

  1. Navigate to the Main.java class for the workspace, right-click, choose "Run As"->"Java Application"
  2. If the application fails to find the plugin folder, configure the run working directory


Debugging JPF plugins

Instructions to setup Eclipse for debugging can be found here: http://jpf.sourceforge.net/ide-eclipse.html


CalTechAIRPipeline   21 May 2009 - 18:03 - r1.2   DavitJanvelyan
Table of Contents


AIR Pipeline Workflow Plugin


User Manual



Introduction

The Automated Image Registration (AIR)-based plugin allows the user to create template and register pre- and post- injection mouse brain images in Analyze Image format using the command-line execution of LONI Pipeline workflows (LONI Pipeline).

Getting Started

To use the AIR-based image template creation and registration plugin:

  1. Open the Registration Workspace.
  2. Add and select the Source and Template data
  3. Select the AIR Pipeline Workflow item in the Registration Method combobox. If successful, Pipeline Methods drop-down menu will be displayed in the workspace, along with the I/O-paths window and the command-line output window.

File Formats supported

  1. Analyze Image (16-bit)

Cart objects supported

  1. derived class of Image3D

User interface

  • Choosing pipeline method:
    1. Select method from drop down menu.

Functional Specification


    1. Create Template method aligns Source images to template image and creates a template based on aligned source images which is saved to the location specified in "Output filename path".
    2. Register Pre-injection method registers source images to the template image. The output of this step are the source images that are in the same space as the template image. The transformation matrices are also saved to be used to register post-injection images.
    3. Register Post-injection method applies the transformation matrices saved from Register Pre-injection step to the appropriate source images to put them in the same space.

Workspace Interoperability



Error Handling

Method Object Error Exception thrown Notes
setSourceObjects() -- Unsupported mbObject yes mbObjectException
setTemplateObjects() -- Unsupported mbObject yes mbObjectException
getRegisteredObjects() -- -- no none


DarenLee? - 04 May 2009

CarlGustafson   29 Apr 2009 - 13:29 - r1.3   CarlGustafson
Carl Gustafson - carl.gustafson@drexelmed.edu - proper noun
  1. - a member of the Laboratory for Bioimaging and Anatomical Informatics, Drexel University College of Medicine
  2. - a geek from the Philadelphia suburbs who likes railroads, wierd plants, opera, and punk rock.
  3. - reformed chemist turned software developer

origin 1955, product of two chemists

CartManager   16 May 2009 - 23:54 - r1.4   DarenLee
Table of Contents


Cart Manager

Cart Manager is the mechanism using which objects are passed in different workspaces in MBAT. MBAT API users can add new plugins to the application, and still use cart manager as a way of passing objects from one workspace to another.

Cart Basics

Showing/hiding the cart

  • Show Cart manager: To view cart manager, select View > Cart option from the top menubar.By default cart manager pane is placed on the left side of the application window. It displays the name, source and type of every item currently in the cart in a tabular format.
  • Hiding Cart manager: To hide cart manager, click on View > Cart option again.

Docking/undocking the cart window

  • Changing default location of cart manager window: To change the position of the cart manager, users can drag and drop the cart manager to a different location inside or outside the application window.
  • Changing display size of cart manager window: To change size of the cart manager window, users can use the standard Resize buttons located at the left top side of the cart manager window.
    • Minimizing cart manager window: Clicking on the "minimize" button located on the top left corner, should minimize the cart manager window, place "Cart Manager" and "Control" tabs on the left side, and expand the viewport area. Following diagram shows the MBAT application view after cart manager has been minimized:

    • Restoring minimized cart manager window: Clicking on the "Cart Manager" tab will restore the cart manager window to its original state. Following diagram shows the cart manager window after it is restored to its original size.


Using the Cart

Sorting the cart

  • By default, the cart contents are displayed in the order in which the objects were added to the cart. This ordering can be changed by sorting the contents in one of the following three ways:
    • Sort by object name: Click on the "Name" column header in the table to sort items based on object name.
    • Sort by source name: Click on the "Source" column header in the table to sort items based on source name.
    • Sort by object type: Click on the "Type" column header in the table to sort items based on object type.

Deleting objects

  • To delete an object from the cart, select the object and then click on the Delete button located at the bottom of the cart manager pane.
  • To empty the cart, click on the Recycle Bin located at the bottom of the cart manager pane.

Opening objects

  • To open cart items, select the object(s) in the cart and click on the Open button located at the bottom of the cart manager window.
  • Note: each workspace handles the Open event different so consult the specific workspace documentation for more details.


CellCenteredDatabaseCCDB   28 Apr 2009 - 21:39 - NEW   QueenieNg
Table of Contents


Cell Centered Database(CCDB) data source plugin


User Manual



Introduction

The CCDB data source plugins allows the user to query the publicly available Cell Centered Database(http://ccdb.ucsd.edu) and retrieve the cell images hosted on their website.

Getting Started

To access the ABA data source plugin

  1. open the Search Workspace
  2. switch to the query term subworkspace by selecting Search > By query terms in the menu bar


Functional Specification



Search and Data types

The CCDB data source plugin supports the following search types:

  1. Search by query terms
  2. Search by keyword

The CCDB data source plugin returns the following type of data:

  1. CCDBImage (derived from Image2D)


Supported Query Terms

Group Parameter Value Supported Notes
Experimental Info Project any yes  
Keyword (Project) no  
 
Gene/Molecule Gene Attribute Gene Symbol no  
Gene Name no  
Protein no  
Keyword no  
 
Subject/Organism Species Mouse yes  
Strains any yes  
C57BL yes  
129s6 yes  
A/J yes  
B6D2F1 yes  
BALB/c yes  
CBA yes  
C3H yes  
DBA yes  
FVB yes  
Developmental Stage adult yes  
embryonic yes  
fetal yes  
neonate/infant yes  
child/pup yes  
juvenile yes  
Sex any yes  
female yes  
male yes  
other yes  
 
Anatomical Area/Tissue Anatomical Area/Tissue any yes  
CNS (tree) yes  
Other Body Part yes  


Annotations

For the CCDBImage, the following annotations are listed:

  1. Name
  2. Project Name
  3. File Size
  4. CCDB Image URL
  5. Image Name
  6. Area
  7. Tissue
  8. Structure
  9. Experiment Purpose
  10. Publications
  11. Product Type
  12. Instrument
  13. System
  14. Collaborators
  15. Species
  16. Cell Type


Credentials

No credentials are required to query the CCDB database.


Database Connection Type

HTTP


Workspace Interoperability

  • Comparison Viewer Workspace
    1. Open and visualize data using built-in 2D image plugin


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  
searchByQueryTerms() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


QueenieNg? - 28 Apr 2009

CodingPolicies   09 May 2008 - 15:27 - NEW   DarenLee

Coding Policies

To maintain good team development and coding standards, all developers must adhere to the following policies:


  1. Comment all commits
  2. Comment code as you go
  3. All changes must go through code review


May 2008

CollaborativeAtlasPage   22 Mar 2006 - 23:01 - NEW   JylBoline
First draft by Seth, Erh-Fang, and Jyl on 3/22/06 as conceptualized by Seth Ruffins and Mike Tyszka

Need

  • Documenation of what the goal is of this project including request for what people can do to contribute to this effort
  • Submission form (can this interface directly with the database?) which includes:
    • contributor (name, institution/group/lab)
    • region(s) delineated
    • protocol used for delineations. includes:
      • image conversions
      • program used for delineations
      • rationale used to generate delineations (i.e. guiding boundaries, landmarks for end of structure)
      • more than one contributor
      • naming convention used (provide links to those used by this group)
    • if or how validated
    • list any conversions to the image data or label data
  • Minimum of one standard format image dataset (for download)
  • Converters from different image types to standard format
  • Label file standard format
  • Converters from different label types to standard format
  • Access to public tool(s) for delineation
  • Documentation and example of how to use public tool(s) to delineate

Further down the road

  • Repository and database of reuploaded new delineations
  • A way to navigate through and query the uploaded delineations
CommonDataModel   31 Mar 2008 - 14:49 - r1.8   QueenieNg
Web-Services API Working Page

Data-type Work Pages

Supporting Documents

Related Information


See Metadata Mapping page for work on using these common data models to specify Mouse BIRN metadata for upload and query from different data sources and types
ComparisonView   23 Jan 2008 - 01:16 - r1.3   DarenLee

Comparison Workspace Features

List of desirable features for MBAT Comparison Workspace. Items in italics are open issues.

  • Focus on flexibility and customization
    1. Allow for N comparisons of datasets
    2. Allow for customizable window layout and size
    3. Allow for virtual page of infinite size
  • Focus on side-by-side view
  • Focus on maximizing real estate for comparison image
    • Replace 4-up view
      1. Side-by-side: two windows
      2. Overlay: one window
    • Collapsible subwindows
      1. Thumbnail viewer
      2. Comparison cart?
    • Context driven controls
      1. HUD controls overlayed over image for zoom/pan/rotate (aka: GoogleEarth?)
  • Analysis Tools?
    • Linked controls
      1. Handle different scales? (ie: 2 volumes with different sizes)
      2. Handle different data types? (ie: 2D v. 3D image / surface v. image)
    • Viewing
      1. View XY, YZ, XZ planes
      2. Pan
      3. Annotate
      4. Browse through slices
      5. Zoom
      6. Zoomify (ie: level of detail)
    • Overlay comparison
      1. Blending (Remove background color?)
      2. Logical operations (union, intersection, etc)
      3. Layers (aka: GoogleEarth?)
    • Image processing
      1. Contrast control (ie: transfer function)
      2. Masking
    • Object selection (ie: click on image/surface and get properties dialog)
    • Registration
    • Computational tools (may be specific to workspace (Image Analysis/Gene Expression)
      • Volumetric comparison (Image)
      • Statistical comparison (Image)
      • Normalize datasets (Gene Experssion)
      • Analyze across a gene (Gene Expression)
  • Data types
    • 2D image
    • 3D image volume
    • 2D Quantitative data
    • 3D Quantitative data
    • Time-dependent data
      1. 2D images
      2. 3D images
      3. Signal (1D,2D,3D)?
      4. Measurement (1D,2D,3D)?

  • Data sources
    • Local files
    • Remote files?

  • Support for multiple displays (Future)
    • Each monitor displays dataset

Issues

  • Handle large images
  • Handle level-of-detail images

Technologies

  • JOGL + JDK 1.6: OpenGL? draw on Swing, Swing draw on OpenGL?

ComparisonWorkspace   20 Feb 2008 - 18:20 - NEW   DarenLee

Comparison Workspace Mockup

The comparison workspace will provide UI components to (1) view and compare several datasets at once and (2) apply analysis tools. The comparison workspace will stress flexibility and customization:

  1. Allow for N view of datasets
  2. Allow for customizable window layout and size

The comparison workspace will have similar functionality as the Noodle Viewports:

  1. Drag borders to resize viewports
  2. Drag'n'drop viewports to change layout
  3. Linking of viewports (action applied to one viewport applied to all linked viewports)

CreatingMbatjar   15 Oct 2008 - 00:28 - NEW   DarenLee

Creating mbat.jar

This section gives instructions on how to create the mbat.jar application file using Eclipse. The Ant build file used in these instructions is located at:

  • mbat/src/build.xml

  1. Install build_fat_jar plugin for Eclipse:
  2. To create the mbat.jar:
    1. Auto-create net.nbirn.mbat.about.BuildInfo.java to update the build info using Ant script (Note, the script uses the command line svn client, see svn+ssh command line setup).
      1. Open build.xml in Eclipse (select in Package Explorer and double-click)
      2. Run the svnrevision2java target (in the Outline view, right click the target and select "Run As"->"Ant Build".
    2. Refresh (F5) the mbat project (should automatically rebuild to update the BuildInfo.java class)
    3. Create the .jar file using "Fat Jar"
      1. Right-click on the mbat project, select "Build Fat Jar", and configure the build:

      2. Select the files to include. Note, although the mbXXX libraries are duplicated, the jar file sometimes does not run properly if all them are not selected. For the 3rd party .jar files, only included those that are referenced [TODO: cleanup unused jars].

    4. [Optional] Copy the contents of the dist folder to the install4J folder.
      1. Run the install4J target (Note, you will need to edit the todir location appropriately)


DarenLee? - 15 Oct 2008

CreatingPlugins   01 Apr 2009 - 17:25 - r1.4   QueenieNg
Table of Contents


Adding Plugins to the MBAT source code

These instructions are for adding and creating a new plugin in the MBAT source code. General instructions and Eclipse specific directions are given below.

If you follow the source code plugin file structure, you can run the included ant builds to automatically build and copy your plugin .zip to the correct folder. The following examples assume a new plugin MyPlugin is being added to the mbRegistrationPlugins project.

  1. Create file structure for plugin:
    1. Create a plugin folder in the project (mbRegistrationPlugins/plugins/net.nbirn.mbat.plugins.registration.MyPlugin). For Eclipse, in the "Navigator" view, choose "File->New->Folder".
    2. Create a source folder "src" in the plugin folder (mbRegistrationPlugins/plugins/net.nbirn.mbat.plugins.registration.MyPlugin/src. For Eclipse, in the "Navigator" view, choose "File->New->Folder".
    3. Create and place the plugin manifest file plugin.xml in the source folder (mbRegistrationPlugins/plugins/net.nbirn.mbat.plugins.registration.MyPlugin/src/plugin.xml)
    4. For Eclipse, add the source folder to the project: Right click on the project (mbRegistrationPlugins). Choose "New"->"Src Folder". Select the folder name by clicking "Browse" and navigate to the above source folder.
    5. For Eclipse, set the output folder for the plugin. Right-click the newly added source folder and select "Build Path->Configure Build Path". In the "Source" tab, enable "Allow output folders for source folders" by clicking the checkbox. "Output folder" will then appear under the source folders. Double click the "Output folder" item and choose "Specific output folder". Browse for the root source folder and create a classes folder ( mbRegistrationPlugins/plugins/net.nbirn.mbat.plugins.registration.MyPlugin/classes).
  2. Add the source directory to the mbRegistrationPlugins/build.xml to automatically create the .zip archive and copy it to the plugin directory:

  3. Run the ant build:
    1. For Eclipse, in the "Package Explorer" view, right-click on the build.xml file under the !mbRegistrationPlugins project
    2. Select "Run As.." --> "Ant Build"

Adding Plugins Credit

If you would like to show the plugin info on the About dialog, you can edit the plugin.xml like the following:

Example:

Parameters:

Parameter Name Description
displayName The display name of the plugin
pluginDesc The description of the plugin background or function
contact The contact info of the plugin. It can be phone number, email or http link
provider The plugin provider info e.g LONI UCLA
author The plugin authors
version The plugin build version e.g. 1.0.11
acknowledgement The acknowlegement information such as grant(s) that suppport(s) the project


Adding JAR libraries to plugins

If your plugin depends on external JAR libraries, there are 2 steps to follow:

  1. JPF allows you to specify the JAR libraries in the plugin.xml manifest (see the JPF home page http://jpf.sourceforge.net for more details). An example to add 3 libraries (RegularDiscreteDataTools.jar, ShapeTool.jar, and LandmarkWarpLibrary.jar) to a plugin is given below:

    Note that the path variable is relative to the location of the plugin.xml. If you are using the soure code file structure mentioned above, you need to create a lib folder under the src folder (ie: net.nbirn.mbat.plugins.registration.Landmark/src/lib. This lib directory will then be included in the archive which is built using the build.xml in the previous section.

  2. To get your plugin to compile in Eclipse, you will need to setup an Eclipse classpath variable if it doesn't exist already (see Setup Classpath Variable). By convention, we use the root folder of the plugins for the name the classpath variable (ie: MBREGISTRATION_PLUGINS_SRC_HOME). After the classpath variable is setup, you then have to add the JAR libraries to the project's build path: Right-click project->"Build Path"->"Configure Build Path"->"Libraries"->"Add Variable"->Select the appropriate class path variable->"Extend"->Select JAR file by navigating through the file browser->Click "OK".
CurrentMouseStrains   20 Sep 2006 - 07:36 - r1.8   MaryannEMartone

Preferred terms for Mouse Strains in BIRNLex

Inbred strains

  • BALB/cJ
    • Bonfire_ID: C1516114
    • Jax Stock ID: 000651
    • BIRN_definition: A substrain of BALB/c mouse developed at Jackson Laboratory. From Jackson: nbr 150 +?.Snell to Jackson Laboratory after 1940. Males of this substrain are extremely aggressive and will fight if housed together once mature. The Lac substrain separated in 1952 is non-aggressive. Maintained by J, Ola (JLac substrain). (http://www.informatics.jax.org/external/festing/mouse/docs/BALB.shtml)

  • C57BL/6J
    • Bonfire_ID BF_T0000259
    • Jax Stock ID: 000664
    • BIRN_definition: The C57BL/6 substrain of laboratory mouse bred by the Jackson Laboratory. From Jackson: Inbr (J) 150. Origin: substrains 6 and 10 were separated prior to 1937. This substrain is now probably the most widely used of all inbred strains. Substrain 6 and 10 differ at the H9, Igh2 and Lv loci. Maint. by J,N, Ola. \par (http://www.informatics.jax.org/external/festing/mouse/docs/C57BL.shtml)

  • CBA/J
    • Bonfire_ID: C1511406
    • Jax Stock ID: 000656
    • BIRN_definition: A substrain of CBA mouse developed at the Jackson Labs. The following information was provided by Jackson Labs; Strong, to Andervont 1947, to Jackson Laboratory 1948. Carries gene for retinal degeneration (rd). Skin grafts between CBA/J and CBA/Ca are rejected (Green and Kaufer, 1965). http://www.informatics.jax.org/external/festing/mouse/docs/CBA.shtml

  • C3HeB/FeJ
    • Bonfire_ID: C1511368
    • Jax Stock ID: 000658
    • BIRN_definition: A substrain of the CH3 laboratory mouse. From Jackson Laboratories: This strain does not carry mouse mammary tumor virus (MMTV). See JAX Notes, May 2000, #480. This strain is also homozygous for the retinal degeneration allele Pde6brd1. (see also http://www.informatics.jax.org/external/festing/mouse/docs/C3H.shtml

  • FVB/NJ
    • Bonfire_ID: BF_T0000377
    • Jax Stock ID: 001800
    • BIRN_definition: A substrain of the FVB inbred laboratory mouse. From Jackson Laboratories: FVB/NJ was inbred for the fv1b allele which confers sensitivity to the Friend leukaemia virus B strain. Due to the prominent pronuclei in their fertilized eggs and the large litter size, FVB/NJ are commonly used for transgenic injection. Relative to many other inbred strains, FVB/NJ is highly susceptible to asthma-like airway responsiveness with significant generation of antigen-specific IgE?. Despite having the H2q MHC haplotype, FVB/NJ are resistant to collagen-induced arthritis...Strain development: In 1966, outbred Swiss mice at the National Institues of Health were selectively bred for either resistance or sensitivity to histamine challenge post pertussis vaccination. At the eighth generation of inbreeding (in the early 1970s), the sensitive line, HSFS/N, was found to carry the Fv1b allele which confers sensitivity to the Friend leukaemia virus B strain. The FVB/N strain resulted from inbreeding this line for the fv1b allele. In 1988 FVB/N mice were imported from NIH to Dr. Taketo at The Jackson Laboratory and in 1991 these were re-derived at F50 into the foundation stocks facility at The Jackson Laboratory. In December 2002 this strain reached F87. (see also http://jaxmice.jax.org/strain/001800.html).

Genetically-modified mice

Animal model: Dopamine transporter knock out mouse
  • B6;129-/Slc6a3tm2Mca
    • Bonfire_ID: BF_T0000376
    • MGI_ID:
    • BIRN_definition: Genetically modified mouse in which the dopamine transporter was knocked out by targeted mutation. The mouse was produced in the laboratory of Dr. Marc Caron, Duke University. (Giros B, et al., Nature. 1996 379(6566):606-12.)

Animal model: Alpha synuclein overexpressor
  • B6;D2-Tg(PDGFB-SNCA)NNEma
    • Bonfire_ID: BF_T0000378
    • MGI_ID: MGI:1353749
    • BIRN_definition: Genetically modified mouse in which the transgene for human alpha synuclein is expressed under the control of the platelet derived growth factor promotor. The mouse was produced in the laboratory of Dr. Eliezer Masliah (Masliah et al., Science. 2000 Feb 18;287(5456):1265-9). NN is the line number; for the D line, B6;D2-Tg(PDGFB-SNCA)4Ema
DataExchange   01 Jun 2007 - 20:49 - r1.3   JylBoline

Facilitation of Data Exchange in Mouse BIRN

Mapping of Mouse BIRN Metadata

Mouse XCEDE Working page

Controlled Vocabularies

SRB metadata

SRB Hierarchy

XML standards

Facilitation of Data Exchange outside of Mouse BIRN

DataFedTCons   15 Aug 2006 - 07:28 - r1.3   WilliamBug

Mouse Data Federation Working Group Tele-conferences


Tuesday, 2006-08-01

Tuesday, 2006-08-08

Tuesday, 2006-08-15

DataFederationTOC   02 Mar 2007 - 01:33 - r1.2   JylBoline

Go to Mouse BIRN Wiki Table of Contents

Data Federation: Table of Contents of Working Pages




Global Conceptual Schema page


Mouse BIRN Queries page


Data Federation 'How to' Questions page



Gene Expression Database Migration Plan

DataMediation   29 Jul 2006 - 12:57 - r1.4   WilliamBug

BIRN Mediator Topics Related to Mouse BIRN

Source database registration

Linking the BIRN Mediator to SRB (July 28, 2006)

Mediator queries can be used to retrieve SRB locations for data files.

Given there is now a web-service front-end to the Mediator, both MBAT and the workflow tools could fairly easily incorporate a mediator query and make use of the various SRB APIs to resolve the SRB locations returned by the mediator to access the data files themselves.

See attached document for more information on this Mediator-to-SRB connection.

DataSources   23 Jan 2008 - 01:16 - r1.3   DarenLee

Data Sources

  • Drexel Atlas to MBAT format
  • Concept term mapping DB accessed and used for MBAT data sources
  • Metadata mapping finished for all sites
  • Switch to advanced Gene Annotation DB (Paul Pavlidis)
  • Access to raw microarray data with option to re-analyze data on the fly
  • Document and have initial standards in place for other groups to use MBAT and similar services for their own data
DatabaseServer   04 Feb 2009 - 18:48 - r1.2   DarenLee
No permission to read topic DatabaseServer - perhaps you need to log in?
Dec1Minutes   01 Dec 2006 - 22:30 - NEW   JylBoline
Attendees: Rob Williams, Arthur Centeno, Zhaohui Sun, Beni Mozhui, Steve Anderson, Queenie Ng, Allan MacKenzie-Graham, Jyl Boline

  • UTHSC plans to replicate Zapala data with new microarray platform and include many organs-would like to see MBAT expanded to handle other organs

MBAT review:

  • Start with review of GeneNetwork query, there's some mismatching with some of the structure names. For the newer datasets, the structures are being mapped as closely to BIRNLex as possible so the terms match the atlases. Currently, with GN, Steve's using a look-up table. Mapping of structures isn't quite right-send the tables to Rob, Allan, and Maryann
  • Annotation information for genes: GN has a more complete annotation than that from Affymetrix. Best possibile solution would be to register these from the UTHSC database with the mediator. Jyl will talk to the BIRN CC group to look into it. Internet speed could be a problem?
  • Return of Gene Expression data: No sorting on parameters yet, would prefer to do that on the server end. UTHSC has it implemented on AJAX, would their code be useful for UCLA?
  • Review of Zapala/Barlow data: Steve hasn't yet implemented the information from the paper yet...be better to sort this data so it can be uploaded to the BIRN microarray database.
  • Still unclear of how to change the display in relation to the sorting of information. Still struggling with how to present the data heirarchy
  • Would like to have an average column for structures (based on features of the mouse)
  • General layout, the scrolling through the return results is the most important at this point-try to get more column information in the view
  • GUI stuff is time consuming, so it'd be good to get as much of the layout figured out as possible before changing-Steve and Rob will play around with potential layouts. Allan has a suggested layout he can send around and UCLA will also look into having Zai revisit it.
  • Is it possible to add the ability to let the user adjust the settings they want? User would need a cookie
  • UTHSC will be able to give new data for Illumina arrays for 10 new animals in the near future
  • UTHSC is working on the punch method, this type of data would be ideal for trying to register spatially to an atlas
  • UTHSC has data from GNF in an Excel Table. They will try to use the BIRN microarray DB to upload this data.
  • Potential to upload many other datasets over the summer
  • The BIRN microarray DB should be registered to the mediator-start migrating all GE data to this DB
  • Also start migrating the "freely sharable" data to a new "account" that would allow the users to browse any sharable data by any group
  • Sounds like the current server may not be adequate for our needs in the future. Jyl will talk to CC about moving it to a more appropriate server
  • We should contact Stan Nelson to demo MBAT. He's part of the microarray consortium, also might be able to look at their DB structure for expansion of ours towards one that would fit our desired common data model. Allan will contact him

Dec8Minutes   09 Dec 2006 - 01:04 - r1.2   SteveAnderson
Attending: Rob, Beni, Arthur, Daniel, Queenie, Steve, Jyl

Problems uploading the 20 MB file (34 columns), the original has 50-60 column and failed with 30 columns which was 12 MB. Beni will e-mail the screen shot error to Steve. UTHSC will also look for any bad characters in the file. Limit any one upload to 20 MB on old server, but the same user can load multiple files and they can be searched. For Rob, 100 MB would be more appropriate. Queenie thinks the server will need to be tested. For now this'll be fine, but if they ever send low-level array data, it'd be in GBs.

We'll have Beni test the upload server again with all the rows and just one or two columns. Steve will try as well to make sure there's not a bug on the server end. Steve will send Arthur, Beni, and Rob an example for the current annotation information. UTHSC will send their GNF/SymAtlas file annotation file in a similar format.

May be good to allow the user to be sure to idenitfy the appropriate Array along with a normalization table. They can replicate GN's schema, along with an export feature for the tables. Best to register this with the mediator. Also, Steve will speak to Brian about what's involved in registering their DBs.

Only about 10 of the structures will be viewable in MBAT. The list on the server corresponds to Allan's atlas as of a couple months ago. Pituitary gland may not be. Also the problem with entering "other" in the DB. Would like to see it put into the DB that might at some point allow a visual display of body organs. Al Johnson has full-body mouse atlases, could switch atlases to the full body.

Also, make sure the UTHSC group is involved in the call with the CC on these issues 12/20 at 9:30 AM PST if they'd like.

EclipseSetup   19 Nov 2009 - 18:08 - r1.7   DarenLee


Required Software

  1. Java SDK 1.6: http://java.sun.com/javase/downloads/index.jsp
  2. JOGL JSR231-1.1.1: https://jogl.dev.java.net/
  3. Eclipse: http://www.eclipse.org/downloads/ (The following instructions were written for Eclipse Europa unless specified).

Subclipse Installation (SVN Client for Eclipse)

For latest subclipse installation directions, see http://subclipse.tigris.org/install.html.

Eclipse Galileo

  1. Start Eclipse.
  2. Open Help > Install New Software.... Click on Add to add the subclipse software site. Enter the URL "http://subclipse.tigris.org/update_1.4.x". Click OK.
  3. Select the subclipse site in the dropdown box. The software packages will be populated in the package table as shown below. Select all the packages.
  4. After installation, setup SVNKit (see SVN Configuration ).

    Eclipse_Galileo_Subclipse.png

Eclipse Europa

  1. Start Eclipse.
  2. Open Menu "Help > Software updates > Find and install..."
  3. Select "Search for new features to install". Click Next.
  4. Select the Europa discovery site and the SubEclipse update site (add the SubEclipse site via 'New Remote Site' if it isn't present http://subclipse.tigris.org/update_1.2.x/ ). Click Finish.
  5. Select the features to install:

    Eclipse_Setup.jpg

  6. Under the "Europa Discovery Site" tree view, select:
    1. Database Development
    2. Enabling Features
    3. Graphical Editors and Frameworks
    4. Java Development
    5. Models and Model Development
    6. Other Tools > Buckminister - Core (Incubation)
    7. Web and JEE Development
    8. (DO NOT INSTALL Mylyn)
  7. Under the "Subclipse 1.2x (Eclipse 3.2+)" tree view, select only:
    1. Buckminister - Subclipse support
  8. Click Next and complete the wizard.


Eclipse Setup (SVN Configuration)

  1. Request a SVN account (sysadm@loni.ucla.edu)
  2. Enable SVNKit:
    1. Open Menu "Windows > Preference".
    2. In the tree view, navigate to "Team > SVN".
    3. Under "SVN interface", select "SVNKIT (Pure Java)".
    4. Click OK.

Eclipse Setup (Checking out projects from SVN repository)

  1. Checkout repository:
    1. Open Menu "New > Other"
    2. Select "SVN > Checkout Projects from SVN". Click Next.
    3. Select "Create a new repository location". Click Next.
    4. For the URL, enter svn+ssh://svn.loni.ucla.edu/cvs/MouseBIRN. Click Next.
    5. If prompted, enter SSH Credentials. Click OK.
    6. Select the trunk folders to checkout (common,dlJGraphics, and all mb* projects). Ctrl-click to checkout multiple projects at one time and click Next when done:
      • common/trunk
      • dlJGraphics/trunk
      • mbManagerCart/trunk
      • mbManagerDocking/trunk
      • mbManagerGraph/trunk
      • mbManagerIO/trunk
      • mbManagerIOPlugins/trunk
      • mbManagerPlugin/trunk
      • mbManagerSerializer/trunk
      • mbRegistration/trunk
      • mbRegistrationPlugins/trunk
      • mbSearch/trunk
      • mbSearchPlugins/trunk
      • mbSecurity/trunk
      • mbSwingExtensions/trunk
      • mbViewer/trunk
      • mbViewerPlugins/trunk
      • mbWorkspace/trunk
      • mbWorkspacePlugins/trunk
      • mbat/trunk
     Eclipse_Setup_SVN_Checkout.jpg
    1. Under "Choose how to checkout folder", select "Checkout as project in workspace". The "Project name" should be filled in.
    2. Click Next. Click Finish.

Since the Eclipse configuration files (.classpath and .project) are included in the repository, skip to the next step, setting the CLASSPATH variables (see below). However, if there are problems, you can manually configure the project as follows:

  1. Configure Package Settings:
    1. In the "Package Explorer", right-click on the recently created project. Select "Delete". Select "Do not delete contents". Select "Yes".
    2. Open Menu "File > New > Java Project".
    3. Enter a "Project name" (referenced in this document as $PROJECTNAME$).
    4. Select "Create project from existing source".
    5. Enter location of source code directory checked out from repository. Click Next.
    6. In the "Java Settings" wizard, change the "Default output folder" to $PROJECTNAME$/classes. Click Finish.
  2. Configure Build Path for each project:
    1. Open Menu "Project > Properties" or in the "Package Explorer", right-click on the recently created project. Select "Build Path > Configure Build Path...".
    2. In the "Libraries" Tab, click on "Add External JARS". Navigate to the MouseBIRN\common folder and select all the .jars. Click Open.
    3. In the "Projects" Tab, click on "Add" and select the projects that are required to build.
    4. Click OK to exit Build Path Wizard.


Eclipse Setup (Classpath Variables)

  1. Open Menu "Window->Preferences->Java->BuildPath". Expand "BuildPath" and select "Classpath Variables".
  2. To create a new variable, click the "New" button. Enter variable name (ie: MBAT_COMMON) and path (ie: C:\mbat\common ). Click "OK" to finish.
  • MBAT Classpath Variables
    1. MBAT_COMMON (ie: $MBAT_SRC_HOME$\common)
    2. MBREGISTRATION_PLUGINS_SRC_HOME (ie: $MBAT_SRC_HOME$\mbRegistrationPlugins)

Each project may required different CLASSPATH variables so check the compiler errors for "Unbound classpath variable" and define that variable.

Eclipse Setup (Setting Java Compiler to Java 6.0)

  1. For each project, right-click and select "Properties". Under the "Java Compiler" category in the tree view, deselect "Enable project specific settings".
  2. Change the default JRE:
    • WIN32: Select "Window->Preferences". Under the "Java->Installed JREs" category, select an installed JDK 1.6 (if none are listed, you will need to install Java SDK 1.6).
    • MacOS X: Select "Eclipse->Preferences" (or Command + ,). Under the "Java->Installed JREs" category, select an installed JDK 1.6 (if none are listed, you will need to install Java SDK 1.6).
      • Java installation folder: /System/Library/Frameworks/JavaVM.framework/Versions/

Eclipse Setup (Configuring run working directory)

In order to find the plugin folders, you need to configure the working directory for each application with a main() method (ie: mbat3.0 executable or standalone client). The Eclipse setup assumes the plugin folders are located in mbat/dist.
  1. Open "Run Dialog": Right-click project -> "Run as" -> "Open Run Dialog..." or in the toolbar, select the dropdown menu next to the "Run As" shortcut -> "Open Run Dialog...".
  2. Select the application to edit in the left panel, under the "Java Application" tree view. Note, the application must have been run at least once to show up. To run the application for the first time, see Running MBAT or Running standalone clients.
  3. In the "Arguments" tab, in the "Working directory" section, select "Other:". Click on "Workspace...". Expand "mbat" and select the "dist" folder. Click "OK". Note, if the "dist" folder does not appear then either refresh the mbat project or run the build.xml scripts to create the folder.
  4. Click "Apply".

Eclipse Setup (Adding a library to buildpath with Classpath Variables)

By adding libraries using classpath variables, the .project and .classpath can be easily distributed. This step is unnecessary unless you are adding a new library to the project:
  1. Open Menu "Project->Properties->BuildPath". Select the "Libraries" tab.
  2. Click the "Add Variable..." button. Select a classpath variable. If variable is a folder, click on "Extend" button to select file.


Eclipse Memory Analyzer Setup

The Eclipse Memory Analyzer (http://www.eclipse.org/mat/) plugin helps identify memory usage and memory leaks.

Installing the plugin

The following instructions are for Eclipse Galileo. For details for other versions, see http://www.eclipse.org/mat/downloads.php#0_8_0.
  1. Help > New Install Software. Click Add. Enter the URL: http://download.eclipse.org/technology/mat/latest/update-site/. Click OK.
  2. Select the Memory Analyzer package to install.

Creating a heap dump

The Memory Analyzer plugin uses a heap dump to analyze the memory. The easiest method to get a heap dump is to use JConsole, which is part of the JDK tools.
  1. Run JConsole ($JDKHOME$\bin\jconsole.exe).
  2. Run application in Eclipse.
  3. In JConsole, make a New Connection Connection > New Connection. Select Local Process and select the corresponding process for your program (identified by the main class).
  4. When ready, to get the heap dump, select the MBeans tab. Expand the com.sun.management > HotSpotDiagnostic > Operations tree. In the Operation invocation panel, enter the filename in p0 with extension .hprof (this is the Memory Analyzer file extension). Click dumpHeap. The file is stored in the working directory of the running application.

Using the Memory Analyzer plugin

  1. To open the heap file in Eclipse, select File > Open File ... and select the .hprof file above. The Memory Analyzer plugin should start running.
  2. Introductory webinar to using the Memory Analyzer: http://live.eclipse.org/node/520. Click on View Webinar to see the presentation.
  3. [TODO]: more details on how to get started checking memory leaks here...


Installing JOGL

  1. Download the appropriate JSR-231 1.1.1 platform release from https://jogl.dev.java.net/.
  2. Unzip the release build to a folder of your choice (ie: C:\jogl-1.1.1-windows-i586)
  • Method #1 (add JOGL dlls to system path)
    1. Windows: add the JOGL lib folder to the PATH environmental variable (ie: C:\jogl-1.1.1-windows-i586\lib). Note: on Vista, you may have to add it to the root PATH environment variable, not the user level in order for it to work.
    2. Mac OS X: add the JOGL lib folder to the DYLD_LIBRARY_PATH environmental variable
    3. Linux: add the JOGL lib folder to the LD_LIBRARY_PATH environmental variable
    4. Close and restart Eclipse
  • Method #2 (add JOGL dlls to Eclipse runtime environmental variables)
    1. Open "Run Dialog": Right-click project -> "Run as" -> "Open Run Dialog..." or in the toolbar, select the dropdown menu next to the "Run As" shortcut -> "Open Run Dialog...".
    2. Select the application to edit in the left panel, under the "Java Application" tree view. Note, the application must have been run at least once to show up.
    3. In the "Environment" tab, select "New" to add a new environmental variable. Set the environmental variables as specified in Method 1.
  • Method #3 (set Native Library Path in Eclipse) [this method is not recommended since everytime you update the .classpath or .project files, you will have to configure the native libraries again]
    1. In Eclipse, under the "mbat" project, expand the "Referenced Libraries"
    2. Right-click on "gluegen-rt.jar", select "Properties". In the popup windows, select "Native Library" and select "External Folder" to select the path of the JOGL native libraries (ie: C:\jogl-1.1.1-windows-i586\lib)
    3. Repeat for "jogl.jar"

Misc Preferences Settings

  1. Improve SVN label decorations performace:
    • Open Preferences > Team > SVN > Label Decorations > General tab. Uncheck "Compute deep outgoing state for folders". Select Apply.
  2. Disable problem reporting as you type (helps improves performance)
    • Open Preferences > Java > Editor. Disable checkbox for "Report problems as you type". Select Apply.
  3. Show heap status (allows you to initiate garbage collection)
    • Open Preferences > General. Click on "Show heap status". Click Apply.
    • The heap status is shown in the lower right. You can click on the "Trash" icon to start the garbage collecction.
  4. To clean up Eclipse (cleans up cached properties)
    • run Eclipse with "-clean" on command line.

ElectronicLabNotebookELN   07 May 2009 - 17:38 - NEW   EdrissMerchant
Table of Contents


Electronic Lab Notebook (ELN) data source plugin


User Manual



Introduction

The ELN data source plugins allows the user to query the Caltech Electronic Lab Notebook (http://atlasserv.caltech.edu:1977/birn/index.jsp) and retrieve a list of query results (Study Information, Dataset Information, Subject Information). Every Dataset contains a number of MRI image scans stored in NIFTI format.

Getting Started

To access the ELN data source plugin

  1. open the Search Workspace
  2. switch to the keyword subworkspace by selecting Search > By keyword in the menu bar


Functional Specification



Search and Data types

The ELN data source plugin supports the following search types:

  1. Search by keyword

The ELN data source plugin returns the following type of data:

  1. Vector<mbQueryResult>, list of query results (Study Name, Subject ID, Study Description, Study ID). Every Search Result contains links to 3D Volume MRI Image Scans stored in NIFTI format.

Annotations

For the ELN Dataset, the following annotations are listed:

  1. Name
  2. Subject ID
  3. Description
  4. Study ID


Credentials

You must be on the Caltech Network (on campus or via VPN) to access the ELN Datasource. There are no username/passwords required.


Database Connection Type

Oracle JDBC


Workspace Interoperability


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


EdrissMerchant? - 07 May 2009

ExampleTopic2008x05x22   23 May 2008 - 13:58 - r1.2   DarenLee

Meeting Minutes of Test1, 22 May 2008

Dial-in

  • Domestic Dial-in Number: 888-...
  • International Dial-in Number: 608-...
  • Participant Code: ...

Attendees

  • person1., person2., Main., Main.

1. Action Item review

2.

3.

Action Items

Next Meeting: Monday, dd Mmm 2002 @ 8:30am PDT

Back to: ProgrammerMeetingsMinutesMay2008AHM

-- DarenLee - 22 May 2008

Discussion

FeaturesFromRelatedPrograms   10 Aug 2005 - 22:22 - NEW   JylBoline


EMAP

(submitted by Seth)

The Edinburgh Mouse Atlas Project(EMAP) is essentially composed of two major sections. An anatomy browser and gene expression database (EMAGE). Essentially the gene expression database can be accessed through an image interface, an ontological hierarchy of anatomy or a text based search. See the EMAP site (http://genex.hgu.mrc.ac.uk).

The anatomical part is straightforward. Mousing over as structure highlights the anatomical component and displays the name. Clicking on the structure shows it's location in the ontology. Right clicking on the anatomy brings up a menu which will query MGI GXD or EMAGE for the selected anatomy.

EMAGE has two parts; a web based query which, other than minor layout differences, has much of the same functionality as the anatomical browser. The real fun is the JAVA application "EMAGE DB" which can be be downloaded from http://genex.hgu.mrc.ac.uk/Emage/database/emageIntro.html. EMAGE DB allows query and browsing of the EMAGE database either by embryonic stage, gene expressed or anatomical component (stage specifically) that genes are expressed in. It also allows you to "paint" a region on a whole mount image and ask what genes are expressed under the painted region (Not unlike SMARTAtlas). All entries in the database are annotated with photographic plates of the expression pattern, assessment of the signal strength, the "author" of the entry and accession to literature and other databases (i.e. MGI).

The power of EMAP/EMAGE are the links to outside sources and databases.



GenePaint?

(submitted by Rob)

They have integrated a very simple ontology based system to search for expression of genes by structure. http://www.genepaint.org

For "forkhead box A1" try this. Open the Expression Pattern Search. http://www.genepaint.org/cgi-bin/mgrqcgi94?APPNAME=genepaint&PRGNAME=search&ARGUMENTS=-Aforkhead%20box%20A1



Neurome

http://www.neurome.com/company/index.htm

This is a company with some similar interests as mouse BIRN, including a commercial atlas viewer specializing in gene expression data http://www.neurome.com/technology/gallery.htm.

A recent publication is recommended by Allan and you can dowload it at http://www.neurome.com/news/press071905.htm.

FileFormats   07 Feb 2008 - 18:50 - r1.4   DarenLee

File Formats

The following file formats are currently supported by MBAT.

FileFormatsMBAT30   16 Apr 2009 - 21:13 - NEW   DarenLee
Table of Contents


MBAT 3.0 File Formats

Atlas File Format

The .atlas file format is an XML based file format to specify a labelled atlas object which consists of:

  1. 3D volume data (ie: MR data)
  2. label set(s):
    1. 3D label volume (ie: same dimensions as 3D volume data where each voxel specifies an integer ID associated with a label)
    2. Label file (ie: ontology file that maps colors to label IDs and describes the relationships between the labels)

The MBAT3.0 .atlas file format differs from the MBAT2.0 format since it allows multiple label sets per 3D volume. An example .atlas file is given below for an atlas with 2 label sets:

The full XML Schema Definition can be found here mbatAtlas.xsd.


DarenLee? - 16 Apr 2009

Func_spe_graph_manager   23 Apr 2009 - 19:03 - NEW   NikhilSane

Functional Specifications: Graph manager

Func_spec_graph_manager   18 May 2009 - 01:00 - r1.4   DarenLee
Table of Contents


Graph Manager

The Graph Manager presents hierarchical anatomical structure information using a radial tree display that is synchronized with the atlas image in the Viewer workspace. The graph display provides an alternate means of navigating the atlas hierarchy. Rather than selecting the structures from the atlas image, the user can select the corresponding nodes in the graph display. Any atlas delineations that identify the selected node’s structure or substructures will be highlighted the same color in the atlas display. Likewise, when the structures are selected directly in the Viewer atlas image, the corresponding node is highlighted in the graph.

Graph Manager and Atlas


User Interface

Selecting nodes

Selecting a parent node in the graph automatically selects all child substructures, but selecting a structure in the atlas image in the Viewer workspace only selects the node for the structure that was actually clicked.
  • Single selection: Left mouse double-click a node in the graph to select or deselect it. If selected, the node is highlighted in the graph (and in the atlas) and all other nodes are grayed out.
  • Multiple selection: Shift + left mouse double-click adds or removes the current node from the selected list. The selected node(s) are highlighted in the graph (and in the atlas).
  • Clear the selection: Left mouse double-click in an empty area in the graph will clear the selected list of nodes. All nodes will return to their default color.

Changing the view

  • Left mouse-drag on an empty area of the graph to reposition the graph.
  • Scroll the Mouse wheel to zoom in or out.

Sending to search workspace

  • Right mouse double-click anywhere on the graph to send the currently selected node names to the keyword search subworkspace. The system will switch to the keyword search subworkspace and the node names are entered in the keyword text box.


Loading Graph Data

The graph data is loaded as part of an atlas file. To load a graph as part of an atlas, a ".ilf" formatted label file must be specified as the “src” attribute of the “labelhierarchy” element in the atlas file (".atlas"). The atlas can then be loaded by selecting the atlas file using the file browser pulldown at the lower left hand corner of the Viewer workspace. As the atlas files are loaded, the IOManager will read the labels from the .ilf file and create a mbGraph object for the display.

Func_spec_registration_workspace   16 May 2009 - 23:47 - r1.3   DarenLee
Table of Contents


Registration workspace

Using registration workspace, users can align a source image with respect to a template image. Following diagram shows the design on this workspace:

Registration screen

Default behavior for this workspace is as follows:

  • Top panel displays a section for selecting source and template data.
  • Center panel displays a combobox to select the registration plugin. Once a plugin is selected, its GUI will be shown in the center panel.
  • By default, MBAT provides the following registration methods: (* Note that API users can add other registration methods by creating registration plugins.)
    • Landmark warp


Adding data to source and template sections

Adding from file(s)

  • To add a file to the sources list, select the source data section by clicking on it. Next, click on the Plus button located between the source and the template sections. Clicking on this button will open up a file selection box using which user can specify the file to load in the source data section.
  • To add a file to the template list, select the template data section by clicking on it. Select the template file as specified in the previous step.

Adding from the cart

  • Open the Cart.
  • To add an object from the cart to the sources list, select the source data section by clicking on it. In the cart, select the object to add and click on the Open button (arrow icon). The selected cart object will be added to the sources list.
  • To add an object from the cart to the templates list, select the template data section by clicking on it. Select the cart object as specified in the previous step.


Saving the result to the cart

  • To save the result image to the cart, click on the Add to cart button.
  • System should now display the result image in the cart manager.
  • Users can now use this cart object for further processing in any other workspaces.


Landmark warp

  1. Applying Landmark warp to source image:
    • Click on an image in the source section to use this image as a source image.
    • Click on an image in the template section to use this image as a template image.
    • Click on the Apply button.
      • System will display both the source and template images along with other information such as filename and size in pixels.
      • Hovering the mouse on the source/template image displays X & Y co-ordinates of current location below the image.
    • Specify landmarks on both source and template images by moving the mouse over the corresponding area and clicking right mouse button (CTRL + Mouse click for Macintosh)
      • Landmarks are shown as green squares on the images.
      • To change the location of a landmark, left click on the landmark. This will change the landmark color to red. Draging the mouse to new location while keeping left button pressed will move the selected landmark to the new location.
      • At least 3 landmarks should be specified before applying any warping algorithm to the source image. The Warp button will get enabled only after at least three landmarks have been specified by the user.
    • Select registration method to be used for warping. Currently, MBAT core shows following registration methods in the drop-down box:
      • linear list squared best fit
      • Non linear spline
        • elastic pde w/ linear forces (non radial basis)
        • elastic pde w/ hyperbolic forces (non radial basis)
        • biharmonic equation (thin plate spline radial basis)
        • inverse multiquadratic radial basis
        • guassian radial basis
        • wendland radial basis
    • Click on the Warp button to apply the warp. System will apply the specified warping algorithm on the source image to produce a warped image. The warped image is displayed in the right side image display area.
  2. Deleting a landmark:
    • Select the landmark to be deleted by left clicking on the landmark position.
    • Selecting a landmark activates the Delete button located on the left side of source image pane.
    • Clicking on the delete button should remove the landmark point from both the source and the template images.
    • Note that if the number of active landmark points goes below three, the Warp button is disabled by the system.
  3. Zoom in/out images:
    • Select the image(/s) by clicking on the Apply Zoom checkbox located at the right bottom side of each image pane.
    • Click on zoomin/out buttons to zoom in or zoom out respectively.
  4. Reseting changes:
    • Select the image(/s) by clicking on the Apply Zoom button located at the right bottom of the each image.
    • Click on the Home button to reset any zoom related changes made to the selected image.
  5. Saving the warped image to cart:
    • To save the result image to the cart,click on the Add to cart button.
    • System should now display the result image in cart manager docking panel.
    • Users can now use this image for further processing in any other workspaces.
  6. Saving the warped image to local file:
    • Click on the Save button to store the image to a local file.

Func_spec_save_reload   23 Jun 2009 - 00:30 - r1.7   NikhilSane


File menu options

Introduction

This page describes the functional specifications for "File" menu items. The File menu contains following menu options:
  • File > Open
    • File > Open > Cart
    • File > Open > Workspace
    • File > Open > Workspace Snapshot
  • File > Save
    • File > Save > Cart
    • File > Save > Workspace
    • File > Save > Workspace Snapshot
    • File > Save > Export to image

The options for Following diagram shows the locations of these options.

Menu Options

File

Default behavior for File menu is as follows:
  • In "Welcome workspace": Only File > Open > Cart option should be enabled, all other options should be grayed out.
  • In "Search workspace", "Registration workspace" and "Upload workspace": Only File > Open > Cart and File > Save > Cart options should be enabled, all other options should be grayed out.
  • In "Viewer workspace": all the menu options are enabled.

File > Open > Cart

User can open an existing cart file by clicking on File > Open > Cart. The system displays a file selection box to allow the user to select the cart file. Every cart is stored internally in two files: .cart file and _mtd file. To successfully open a previous cart, it is required that both these files are present in the same directory. If any one of these files is missing, system should display an error message to the user.

There are following 3 use cases:

  • If "_mtd" file exists: The system initializes the required plugins and restores the cart to the original state(state when the cart was saved to test.cart file). After cart initialization, system opens the "Cart Manager" docking window, and displays the cart contents.
  • If "_mtd" file does not exist: The system displays an error message indicating that the metadata file is missing. Following error window is popped up in this case:

  • User selects a file having a different extension(other than ".cart"): The system displays an error message indicating that only ".cart" files can be opened. Following error window is popped up in this case:

File > Open > Workspace

User can open an existing workspace file by clicking on File > Open > Workspace. The system displays a file selection box to allow user to select the workspace file. Internally, system stores a workspace using two files: .ws file and _mtd file. To successfully open a previous workspace, it is required that both these files be present in the same directory.

There are following use cases:

  • User selects a ".ws" file, and corresponding "_mtd" file are present:
    • If "Add to existing workspace" option is checked: If the workspace contains other layers, the system will add the "workspace" contents into additional layers, preserving the existing layers.
    • If "Add to existing workspace" option is not checked: The system will remove all the layers currently being displayed, and reload the workspace with layers from the stored "workspace".
  • User selects a ".ws" file, but the corresponding "_mtd" file is missing: The system will display an error message indicating that the metadata file is missing. In this case, following error window is shown:

  • User selects a file with a different extension(other than ".ws"): The system displays an error message indicating that only ".ws" files can be opened. In this case, following error window is shown:

File > Open > Workspace Snapshot

User can open a previously saved workspace snapshot by using this menu item. There are following 2 differences between storing the current session as a workspace vs. saving it as a workspace snapshot:
  • When stored as "workspace", system creates a ".ws" file and a "_mtd" file to store the state of application. Where as if stored as "workspace snapshot", system creates a ".wslocal" file, a "_mtd" file.
  • When stored as "workspace snapshot", system also downloads the images from sources, and stores these locally.

There are following use cases in this scenario:

  • User selects a ".wslocal" file, and all required files are present:
    • If "Use Downloaded files" option is checked: System reloads the workspace contents using the image files that are stored locally.
      • If "Add to existing workspace" option is checked: If the workspace contains other layers, the system will add the "workspace snapshot" contents into additional layers, preserving the existing layers.
      • If "Add to existing workspace" option is not checked: The system will remove all the layers currently being displayed, and reload the workspace with layers from the stored "workspace snapshot".
    • If "Use Downloaded files" option is not checked: System reloads the workspace, but this time the image files are fetched from their sources, locally stored image files are not utilized.
      • If "Add to existing workspace" option is checked: If the workspace contains other layers, the system will add the "workspace snapshot" contents into additional layers, preserving the existing layers.
      • If "Add to existing workspace" option is not checked: The system will remove all the layers currently being displayed, and reload the workspace with layers from the stored "workspace snapshot".
  • User selects a ".wslocal" file, but corresponding "_mtd" file is missing: The system will display following error window in this case.
<<<TODO: Add missing _mtd image here>>>
  • User selects a ".wslocal" file, but the directory containing downloaded files is missing (or one or several downloaded files are missing): The system will reload the missing image files from the original source. Thus, this is one way for the users to invalidate the cache.
  • User selects a file with a different extension (other than ".wslocal"): The system displays an error window in this case as shown below:
<<<TODO: Add wrong file-type image here>>>

File > Save > Cart

User can store the contents of the cart to a file on the local drive by clicking on File > Save > Cart. This opens a window using which the user can specify the name of the file and its location. Internally the system creates two files to store the cart. (.cart file and _mtd file)

There are following use cases in this scenario:

  • User enters a file name (test.cart), which is new: System will store the cart's contents in ".cart" and "_mtd" files.
  • User enters a file name (test.cart), but the named file already exists: System will display a message informing user that the file already exists. If the user selects to overwrite the file, the cart contents will be written to this file. Following confirmation window is shown in this case:

  • User enters a file name(test): The use cases are similar to the above case, except that the system will automatically add ".cart" extension to the user's input. (i.e. the cart will stored in "test.cart" and "test_mtd" files.)

File > Save > Workspace

User can store the workspace state to a file on the local machine by clicking on File > Save > Workspace. This will pop up a save window using which the user can specify the file name and its location. Internally, workspaces are stored in two files.(.ws file and a _mtd file) There are following use cases in this scenario:
  • User enters a file name (test.ws), and the file is new: System will store the contents of the workspace in "test.ws" and "test_mtd" files in the location specified by the user.
  • User enters a file name (test.ws), but the named file already exists: System will display a message informing user that the file already exists. If the user selects to overwrite the file, the state of the workspace will be stored in this file.

  • User enters a file name(test): Use cases are similar to the above case, except that the system should automatically add ".ws" extension to the user's input. (i.e. the workspace state will be stored in test.ws and test_mtd files.)

File > Save > Workspace Snapshot

User can save the contents of a workspace on local machine using this option. The difference between saving a "workspace snapshot" and saving a "simple workspace" is that in case of workspace snapshot, the system downloads all the image data for the workspace from original source URLs and stores it to local disk. Thus, restoring "workspace snapshot" should be faster than restoring "workspace", since all the required data is already downloaded on the user's machine.

Following are the use cases in this scenario:

  • User enters a file name (test.wslocal), and the file is new: System will store the workspace contents into "test.wslocal" and "test_wslocal_mtd" files. It will also create a directory named "test_downloaded_files", and download all the images being displayed in the workspace in this directory. These images will be used while restoring the workspace snapshot, instead of fetching the image data from the original sources.
  • User enters a file name (test.wslocal), but the file already exists: In this case, system will display a message informing user that the file already exists. If the user selects to overwrite the file, the state of workspace will be stored as mentioned in the earlier use case.
<<TODO: Add image here: .wslocal file already exists. >>
  • User enters a file name (test): The use cases in this scenario are same as mentioned earlier, except that the system will automatically create a file "test.wslocal", and use it to store the state of the workspace.

File > Save > Export to image

User can export the contents of a layer into an image file(.jpg/.png format) by clicking on File > Save > Export to image. This will pop up a save window using which the user can specify the file name and its location.
  • User enters a file name (test.jpg or test.png), and the file is new: System will export the current active layer as a JPEG or PNG image depending on the file extension. While exporting, opacity, contrast and brightness values for the layer are preserved.
  • User enters a file name (test.jpg or test.png), but the file already exists: System will display a message informing user that the file already exists. If the user selects to overwrite the file, current active layer will be exported to the specified file.

  • User enters a filename without any extension: Use cases are similar to the ones mentioned above, except that by default system will create ".jpg" file.
GEMigrationPlan   08 Mar 2007 - 20:08 - r1.2   WilliamBug

Gene Expression Migration Plan

* Migration Plan Overview

* Architecture Diagram

GeneExpDMminutes   08 Dec 2006 - 22:28 - r1.2   JylBoline
GeneExpression   01 May 2009 - 16:44 - NEW   LeiYan
GeneExpressionDM   20 Apr 2007 - 20:48 - r1.13   JylBoline

Recommendation for BIRN MAGE : Started 4/07



People: Rob, Daniel, Jintao, Steve, Hongqiang, Bill
Minutes for follow up meetings
Suggested plan for outlining a Common Data Model (by August 25)
  • Identify data sources
    • GeneNetwork (Searchable API)
      • takes a full list and can do something with it
    • GEO (text dump, array by array)
      • upload of data: MAGE-ML is supported, looks like MINiML (XML) may be more comprehensive
        • create an account
        • submit platform (type of array used)
        • submit sample (one dataset for each microarray-can cross subjects, etc. one experimenter would likley submit many of these per experiment)
        • submit series (links together all samples and explains the experiment)
        • submit raw data (if you wish)
      • download of data
        • query is simple, return of data is dense and difficult to understand and it requires additional filtering by the user
    • GNF (Genome Institute of Novartis Foundation)
      • can return a list of genes
      • symatlas.gnf.org
        • ptpn2: query is cumbersome, but it may return a list of values for several structures (including some in the brain). We are not sure where the data comes from or how it is added to this database. Looks like they use something called the Bioperl object model.
    • Array Express (May be a good place to look for APIs etc.)
      • Public repository for MIAMI-compliant data MGED recommendations: tool called MIAMExpress, or MAGE-ML:
      • investigate their MAGE Java API
      • For query, they have what looks like simple HTTP acccess to their repository. However, all the data is returned and it seems you need to download the data yourself. Also this database seems more specialized for type of tissue (more human)
    • NIH Blueprint Microarray Consortium (***release in 6 months: Stan Nelson, Dietrich Stepsan):
      • have their own relational databases, but upon publication will store it in GEO
  • Investigate if these APIs already exist
  • Investigate if any wrappers already exist for desired data sources
  • Develop 2 use case scenarios for potential microarray user: 1 simple, 1 complex
  • Outline a common Data Model and present to the DF and Atlasing groups, Vadim, and Ilya

Supporting Documents

Related Information

Data to evaluate:
  • Gene Network: on GN database (switch format?)
    • provides real-time data that can be visualized in MBAT
    • also like to use this to provide annotation data to MBAT (real-time?)
    • visualization requires a loaded atlas (recommend one for the user?)
  • Desmond Smith datasets:
    • 1st large voxels
      • currently stored at UCSD:
        • potential to access with mediator?
        • format appropriate for all atlasing efforts?
        • extensible format?
        • worth trying to reformat?
      • accessible through SA
    • 2nd smaller voxels within a single plane
      • to be expanded to other planes
      • current plane can be visualized in MBAT (file)
      • they have a web-engine, but it's not queryable
      • what is the potential for adding this to a mediator accessible DB (they may appreciate this for expansion)?
  • Barlow/Zapala data:
    • currently stored at UCSD : same questions as 1st Des Smith dataset
    • accessible through SA
  • Local data from Daniel Sforza
    • currently able to load it locally (annotation is local, but should be from GN)
    • current interface for visualizing local data is a bit cumbersome

Suggestions from Michael Miller
  • use the MAGE v1 object model and the associated MAGEstk to code to this model
  • EBI ArrayExpress? folks have created a useful "simple" version of the format (MAGE-TAB) to accommodate those not equipped technical to provide MAGE v1 format

  • best programmer resources for MAGE v1:
    • MAGEstk
    • AndroMDA?
    • ArrayExpress? MAGE tools

Evaluate Other:
Standford group mapping (MAGE-ML_to_SMD.xls) at http://www.mged.org/Workgroups/MAGE/mage.html
GeneNetwork   04 May 2009 - 16:08 - r1.2   LeiYan
GeneNetworkGN   04 May 2009 - 15:30 - r1.3   LeiYan
Table of Contents


GeneNetwork (GN) data source plugin


User Manual



Introduction

The GN data source plugins allows the user to query the publicly available GeneNetwork database (http://www.genenetwork.org/) and retrieve a list of query results (Trait, include GeneExpression and Phenotype). Every Trait (include GeneExpression and Phenotype) contains about 100 strains.

Getting Started

To access the GN data source plugin

  1. open the Search Workspace
  2. switch to the keyword subworkspace by selecting Search > By keyword in the menu bar


Functional Specification



Search and Data types

The GN data source plugin supports the following search types:

  1. Search by keyword

The GN data source plugin returns the following type of data:

  1. Vector<mbQueryResult>, list of query results (Trait, include GeneExpression and Phenotype). Every Trait (include GeneExpression and Phenotype) contains about 100 strains. Put the strains into GeneExpression/Phenotype as Children (defined as Vector<mbAnnotatedObject> in class mbAnnotatedObject).


Annotations

For the GeneExpression, the following annotations are listed:

  1. Name
  2. Gene description
  3. Dataset
  4. Gene symbol
  5. Chromosome
  6. Tissue/Cell
  7. Mb

For the Phenotype, the following annotations are listed:

  1. Name
  2. Source
  3. Annotation
  4. Author


Credentials

No credentials are required to query the GN database.


Database Connection Type

HTTP


Workspace Interoperability


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


LeiYan - 01 May 2009

GeneralOntologyStandardsAndFormats   23 Jun 2005 - 21:01 - r1.2   MouseBIRN

General Standards and Tools for Formalized Representation of Information

Below is a list of wide-spread, general efforts to create formal schemes for representing information in a machine parsable format. Most of these technologies are the culmintation of many decades of development and continue to evolve to meet newly emerging data management/integration and systems interoperability requirements. Many of the ontology resources listed above employ one or more of these formalisms for precise information representation. Most of these standards are widely applied across many displines. A few are focussed on the evolving informatics needs in the biological sciences.

Resource Description
Extensible Markup Language (XML) "Extensible Markup Language (XML) is a simple, very flexible text format derived from SGML (ISO 8879), (a data formating standard) originally designed to meet the challenges of large-scale electronic publishing." The XML standards committee now consists of multiple working groups developing rich, flexible XML-derived formalisms for encoding information presentation (XSL, XSLT & XSL/FO), hyperlinks (XLink & XPointer), data schemas (XML Schema) and information queries (XQuery and XPath).
Resource Description Framework (RDF) "The Resource Description Framework (RDF) is a (formal, structured) framework for representing information in the Web."
The Ontology Inference Layer (OIL) "...is a proposal for a web-based representation and inference layer for ontologies, which combines the widely used modelling primitives from frame-based languages with the formal semantics and reasoning services provided by description logics. It is compatible with RDF Schema (RDFS), and includes a precise semantics for describing term meanings (and thus also for describing implied information)...OIL presents a layered approach to a standard ontology language. Each additional layer adds functionality and complexity to the previous layer. This is done such that agents (humans or machines) who can only process a lower layer can still partially understand ontologies that are expressed in any of the higher layers.."
The DARPA Agent Markup Language (DAML) "...XML has a limited capability to describe the relationships (schemas or ontologies) with respect to objects. The use of ontologies provides a very powerful way to describe objects and their relationships to other objects. The DAML language is being developed as an extension to XML and the Resource Description Framework (RDF). The latest release of the language (DAML+OIL) provides a rich set of constructs with which to create ontologies and to markup information so that it is machine readable and understandable."
OWL Web Ontology Language "The Web Ontology Language OWL is a semantic markup language for publishing and sharing ontologies on the World Wide Web. OWL is developed as a vocabulary extension of RDF (the Resource Description Framework) and is derived from the DAML+OIL Web Ontology Language...OWL facilitates greater machine interpretability of Web content than that supported by XML, RDF, and RDF Schema (RDF-S) by providing additional vocabulary along with a formal semantics. OWL has three increasingly-expressive sublanguages: OWL Lite, OWL DL, and OWL Full."
LBase: Semantics for Languages of the Semantic Web "...a framework for specifying the semantics for the languages of the Semantic Web. Some of these languages (notably RDF [RDF-PRIMER] [RDF-VOCABULARY] [RDF-SYNTAX] [RDF-CONCEPTS] [RDF-SEMANTICS], and OWL [OWL]) are currently in various stages of development and we expect others to be developed in the future. This framework is intended to provide a framework for specifying the semantics of all of these languages in a uniform and coherent way. The strategy is to translate the various languages into a common 'base' language thereby providing them with a single coherent model theory."
Metadata.net Definitive references on the current state of the Dublin Core Metadata Initiative and other related metadata standards.
Life Science Identifier (LSID) "(A) resolution protocol, to locate biologically significant data over a network."
Open Biomedical Ontologies (OBO) "(OBO) is an umbrella web address for well-structured controlled vocabularies for shared use across different biological and medical domains." OBO specifies a set of clear requirements a given ontology must meet to be included under their "umbrella", including being provided in one of several formats - e.g., OBO.xml, GO-OWL.xml or text
The Unified Medical Language System (UMLS) from the National Library of Medicine "The purpose of NLM's Unified Medical Language System® (UMLS®) is to facilitate the development of computer systems that behave as if they "understand" the meaning of the language of biomedicine and health...There are three UMLS Knowledge Sources: the Metathesaurus®, the Semantic Network, and the SPECIALIST lexicon...The Metathesaurus® is a very large, multi-purpose, and multi-lingual vocabulary database that contains information about biomedical and health related concepts, their various names, and the relationships among them. It is built from the electronic versions of many different thesauri, classifications, code sets, and lists of controlled terms used in patient care, health services billing, public health statistics, indexing and cataloging biomedical literature, and /or basic, clinical, and health services research...(the) purpose (of the Metathesaurus®) is to link alternative names and views of the same concept together (i.e., create a Semantic Concordance across all source vocabularies) and to identify useful relationships between different concepts. All concepts in the Metathesaurus® are assigned to at least one semantic type from the Semantic Network. This provides consistent categorization of all concepts in the Metathesaurus at the relatively general level represented in the Semantic Network. Many of the words and multi-word terms that appear in concept names or strings in the Metathesaurus® also appear in the SPECIALIST lexicon. The lexical tools are used to generate the word, normalized word, and normalized string indexes to the Metathesaurus®...the Semantic Network provides a consistent categorization of all concepts represented in the UMLS Metathesaurus® and provides a set of useful relationships between these concepts. All information about specific concepts is found in the Metathesaurus®; the Semantic Network provides information about the set of basic semantic types, or categories, which may be assigned to these concepts, and it defines the set of relationships that may hold between the semantic types...There are major groupings of semantic types for organisms, anatomical structures, biologic function, chemicals, events, physical objects, and concepts or ideas. The SPECIALIST lexicon provides the lexical information needed for the SPECIALIST Natural Language Processing System (NLP). It is intended to be a general English lexicon including many biomedical terms. Coverage includes both commonly occurring English words and biomedical vocabulary. The lexicon entry for each word or term records the syntactic, morphological, and orthographic information needed by the SPECIALIST NLP System. The lexical programs or tools address the high degree of variability in natural language words and terms. ...(They) allow the user to abstract away from this sort of variation."


Gensat   28 Apr 2009 - 21:42 - r1.2   QueenieNg
Table of Contents


GENSAT(Rockefeller) data source plugin


User Manual



Introduction

The GENSAT (Rockefeller) data source plugins allows the user to query the publicly available GENSAT database from http://www.gensat.org) and retrieve the images hosted on at NCBI.

Getting Started

To access the GENSAT data source plugin

  1. open the Search Workspace
  2. switch to the query term subworkspace by selecting Search > By query terms in the menu bar


Functional Specification



Search and Data types

The GENSAT (Rockefeller) data source plugin supports the following search types:

  1. Search by query terms

The GENSAT (Rock data source plugin returns the following type of data:

  1. 2D Image Series
  2. Gene
  3. Gene Expression


Supported Query Terms

Group Parameter Value Supported Notes
Experimental Info Project any yes  
Keyword (Project) no  
 
Gene/Molecule Gene Attribute Gene Symbol yes  
Gene Name yes  
Gene Name yes  
Protein no  
Keyword yes  
 
Subject/Organism Species Mouse yes  
Strains any yes  
C57BL yes  
129s6 yes  
A/J yes  
B6D2F1 yes  
BALB/c yes  
CBA yes  
C3H yes  
DBA yes  
FVB yes  
Developmental Stage adult yes  
embryonic yes  
fetal yes  
neonate/infant yes  
child/pup yes  
juvenile yes  
Sex any yes  
female yes  
male yes  
other yes  
 
Anatomical Area/Tissue Anatomical Area/Tissue any yes  
CNS (tree) yes  
Other Body Part yes  


Annotations

For the Gene, the following annotations are listed:
  1. Name
  2. Gene Aliases
  3. Gene
  4. Gene ID
  5. PubMed ID
  6. Organism
  7. GenePaint URL
  8. Entrez URL
  9. GNF(Genomics Institute of the Novartis Research Foundation) URL
  10. NCBI UniGene URL
  11. KEGG URL
  12. MGI Gene Detail URL
  13. MGI Expression Data URL

For the GensatImageSeries, the following annotations are listed:

  1. Name
  2. Plane
  3. Number of Images
  4. Stage
  5. Sex
  6. Image Series ID
  7. Image Series Display Name
  8. Upload Date
  9. Technique

For the GensatExpression, the following annotations are listed:

  1. Name
  2. Gene
  3. Gene Density
  4. Gene Level
  5. Tissue
  6. Stage


Credentials

No credentials are required to query the GENSAT (Rockefeller) database.


Database Connection Type

SOAP


Workspace Interoperability

  • Comparison Viewer Workspace
    1. Open and visualize data using built-in 2D image plugin
  • GeneExpression Viewer
    1. It would be a new feature of future release.


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  
searchByQueryTerms() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


QueenieNg? - 27 Apr 2009

GensatEntrez   28 Apr 2009 - 18:38 - r1.2   QueenieNg
Table of Contents


GENSAT Entrez data source plugin


User Manual



Introduction

The GENSAT (Entrez) data source plugins allows the user to query the publicly available NCBI GENSAT database(http://www.ncbi.nlm.nih.gov/projects/gensat/) and retrieve the images hosted at NCBI.

Getting Started

To access the GENSAT (Entrez) data source plugin

  1. open the Search Workspace
  2. switch to the query term subworkspace by selecting Search > By query terms in the menu bar


Functional Specification



Search and Data types

The GENSAT (Entrez) data source plugin supports the following search types:

  1. Search by keyword

The GENSAT (Entrez) data source plugin returns the following type of data:

  1. 2D Image


Annotations

For the 2DImage, the following annotations are listed:

  1. Name
  2. Image ID
  3. Age
  4. Full Size Image Height
  5. Full Size Image Width
  6. Icon Image Width
  7. Medium Size Image Height
  8. Regular Image Height
  9. MGI ID
  10. Gene ID
  11. Technique
  12. Section Plane
  13. Bac Address
  14. Stain
  15. Gene Name
  16. Accession
  17. Organism
  18. Bac Marker
  19. Sex
  20. Gene Alias
  21. Genbank ID
  22. Gene Symbol
  23. Annotation List
  24. Section Level
  25. Magnification


Credentials

No credentials are required to query the GENSAT (Rockefeller) database.


Database Connection Type

HTTP


Workspace Interoperability

  • Comparison Viewer Workspace
    1. Open and visualize data using built-in 2D image plugin
  • GeneExpression Viewer
    1. It would be a new feature of future release.


Error Handling

Method Error Exception thrown Notes
searchByKeyword() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  
searchByQueryTerms() error establishing connection yes  
connection dropped after initial connection yes  
internal server error yes  


QueenieNg? - 27 Apr 2009

GlobalConcSchema   15 May 2007 - 20:08 - r1.2   JylBoline
Potential schema items that arise from the queries (some are already part of the current global conceptual schema)

Global Conceptual Schema

Most Recent Version:
HIDforAIDB   06 Mar 2008 - 07:12 - r1.8   QueenieNg

Modification of HID for AIDB

The Mouse BIRN group works with many types of images and deals with multiple data sources. Many of the groups work with 3D volumes (mostly MR volumes). These may be raw or processed data, including atlases (which contain several types of information associated with anatomy). Our goal with this work is for the AIDB to be one of the primary Mouse BIRN publicly accessible data sources for users to upload and expose their data using tools created by the FBIRN group that are modified to fit our needs.

This resource would be available for:

  • Mouse BIRN source databases (clone relevant parts of their DB)
  • Any external users to access through simple user interfaces

How to upload data to AIDB?

Information on HID

Relevant Mouse Work

Progress tracking

  • Renewed work began summer 2007 to upload MR data into the HID
  • Mouse BIRN working group was formed including Jeff B, Edriss, Diana, Allan, Queenie, and Jyl tasked with getting data into AIDB
  • In person meeting 9/25/07 at Irvine with Dave Keator, Dingying Wei, and Jeff Grethe to run through test data: Documentation
    • HIDmeeting9_25_07.doc: Minutes from the joint meeting 9/25/07
    • HIDUserWorkflow.doc: General Workflow used by FBIRN and specifics of EAE example from Allan
    • EAE_ProjectSetup.xml: Project Setup Example XML from EAE experiment
    • EAE_Visit.xml: Visit/Subject Example XML from EAE experiment
    • What's next:
      • Allan and Deepthi will take the XML scripts modified by Dingying and Dave today and try to make them work at UCLA.
      • Dingying will try to get their local upload script working and look at it to make sure it’s what we want.
      • Meet again before and at the AHM

  • 11/07: Mouse_XML_Upload.zip: simple JAVA gui for creating project and subject XML files
    • Due to meetings and other deadlines, no progress on uploading to AIDB yet, meet again this month

  • 11/19/07: met with Jeff B, Dingying, Allan, and Jyl: meeting minutes. All groups will try to upload a single dataset and meet next Tuesday 27th 10 AM to discuss any problems.

  • 12/11/07: Allan has been able to set up a project on the AIDB, but he's having problems uploading data. Jeff B has set up a project on the portal and is working on modifying the project XML file.

  • 1/29/07: Allan is still having problems with the Path and hasn't been able to upload data yet. Jeff B ran into several issues while trying to run the installation and has started working on the Subject XML (he will look at Allan's examples on this wiki to see if those help). Queenie will put together some documentation that's specific for Mouse BIRN to help us through this process.
HelpdeskSchedule   26 Jan 2009 - 17:32 - NEW   DarenLee
No permission to read topic HelpdeskSchedule - perhaps you need to log in?
Here   30 Apr 2009 - 17:33 - r1.2   Main.sruffins
sruffins - 16 Apr 2009

MBAT Future Development

This document is a list of suggestions for the future MBAT development. Although the direction of MBAT development within mouse BIRN will be primarily focused on image processing and image presentation/visualization, we will support the construction of other workspaces. An example workspace might be a microarray workspace. Database search and access to online resources will be handled through the search workspace and will leverage the information technologies and capabilities developed at ISI/BIRN CC.

Imaging & image processing:

  • edit Analyze header
  • export image stacks to volume and volumes to image stacks
  • open time varying data and movies
  • image filtering
  • gaussian smoothing
  • noise reduction
  • edge detection
  • threshold and intensity binning
  • bit depth conversion
  • intensity re-mapping
  • gamma manipulation
  • LUT editing & application

  • connectivity
  • generalized LONI pipeline workspace
  • rigid body alignment

Image analysis:

  • signal extraction and mapping

  • morphometrics measurements:
  • length & angle measurements
  • area/volume calculation
  • perimeter/surface area

Visualization:

  • montage a set of 2D images (gallery view)
  • stacks to tiles & tile 2D series
  • surface rendering
  • volume rendering

Atlas functionality:

  • 2D atlases and 2D atlas series
  • paint regions (atlas creation)
  • ROI selection

What are the needs for a quantitative workspace and for what kinds of data?

  • microarray:QPCR: QTL etc.
  • proteomic data
HowToDF   01 Mar 2007 - 21:47 - r1.5   JylBoline
Visit the Mouse BIRN Workflows page to see how this example evolved
EAE example Workflow Based Questions
Based on EAE example workflowfor data sharing between CIT and UCLA and the metadata used for the experiment:
  • How do I find the preferred Mouse BIRN strain name? (Jyl)
  • Where do I find the tools to register my DB to the mediator? (Jyl)
  • Subject ID Questions:
    • What methods are available to map my local Subject ID to a BIRN Subject ID? (Jyl)
    • How do I locate the BIRN Subject ID that I need to map to my local Subject ID? (Jyl)

Query:

  • How do I make a query over registered databases?
    • What tools can I try out for a trival test query? (Sally)

  • Allan sees a trend in the EAE brains he didn't see earlier (i.e. their Corpus Callosum is much thicker) and wants to find ALL the EAE animal volumes collected at both Duke and CIT so he can measure to see if there is a difference between the normal and EAE animals (Jyl)
    • What metadata would he need?
    • What would he use to take a quick look at the volumes and metadata to decide if it fit's his needs?
    • What tools are available for him to run further analyses and re-upload the newly processed data?
    • How does the newly processed data get linked to the original data?
  • Someone decides they want to do a study of the different collection methods, so they do a search for all the normal animals collected by each of the different groups to evaluate if this is an appropriate pool for this sort of study (Jyl)
HowToUseWiki   08 Mar 2005 - 22:14 - NEW   LindaCapetilloCunliffe

How To Use the Wiki

We encourage you to change the contents of a Wiki web page and to add your own web page topics - that is what a Wiki is all about !

Edit a Wiki Page

  • Locate the rectangular tab containing the words "Edit this Page"
  • Click the button.
  • Enter a Wiki user name and password if prompted to do so.
  • Edit the page using the Wiki Text Formatting Rules
  • Preview your changes to the wiki web page by clicking the rectangular button labelled "Preview Changes"
  • Once you are satisfied with the web page, save the changes by clicking the "Save Changes" button.

Add a Wiki page

A Wiki web page is considered to describe a specific topic. To add a new topic:

  • Edit an existing Wiki page and add a WikiWord defining the name of your new Wiki topic.
  • Preview and Save your changes to the existing web page. Your new Wiki Topic will have a small question mark inserted after the word. This means the new topic has not yet been created.
  • Click the new topic.
  • Enter a Wiki user name and password if prompted to do so.
  • You will be viewing a Wiki Edit web page. Enter the contents of your new topic.
  • Preview the changes and revise until you are satisfied (see above for details). * Save the changes to your newly created Wiki Web page.

Adding Images to a Wiki page

*See "Attaching a file to a Wiki page", below.

Attaching a file to a Wiki page.

You may at time want to associate an external file with a Wiki topic. Examples of this might be to add the detailed agenda of a meeting, or a spreadsheet table containing experimental results,and so forth.

To do so,

  • Ensure the file is on your local computer.
  • Click the button labelled "Attach a file". You will be asked to locate the file you want to upload, and to supply a comment that describes the file.
  • Click the "Upload File" button at the bottom of the upload page.

Your file will be sent to the Wiki web site and a table of file attachments to this web page will appear at the bottom of the web page if it not already there.

  • If you select the "Link" checkbox before uploading the file and it is an image format recognized by our Wiki software (Twiki) the picture will appear in the web page. You may then Edit the page (see above) if you want to modify the text before the picture, or it's location on the web page.

Deleting an attached file

  • Locate the attached file in table of files (usually at the bottom of the wiki web page).
  • Click "Manage"
  • Click "Move Attachment" (at the bottom of the management web page).
  • Choose "Trash" from the drop-down Web menu of projects.
  • Type "TrashAttachment" into the Topic text entry area.
  • Click the "Move" button to delete the attachment.

You can find more details using file attachments

IndSiteDBSchemas   27 Apr 2006 - 21:28 - r1.21   JylBoline

Individual site Schemas


Caltech


Duke
* duke_schema_w_segment9.pdf: Overview diagram


Drexel, UTHSC


UCLA


UCSD
  • http://ccdb.ucsd.edu/?
  • ccdb_schema-3.pdf: CCDB ER diagram
  • Conceptual overview of CCDB schema:
    Conceptual overview of CCDB schema



June252007In-PersonProgrammerMeeting   22 Jun 2007 - 22:05 - r1.8   SteveAnderson

In-Person Programmer Meeting

General Information

  • Dates: June 25-26, 2007
  • Location:
    UCSD — BIRN-CC
    9500 Gilman Drive
    Mailcode 0715
    Holly Building
    La Jolla, CA 92093-0715
  • Lodging:
    • Sheraton La Jolla (former Radisson)
      3299 Holiday Court La Jolla, CA 92037
      (858) 453-5500 - main line
      $179/night for Summer rate
    • Del Mar Inn
      720 Camino del Mar, Del Mar, CA 92014
      (858) 755-9765
      • Contact the Del Mar Inn - Steve Macky, General Manager, (858) 755-9765,
        and mention "Mark James, UCSD Neurosciences" to get the UCSD rate of $99/night.
      • Shuttle service to UCSD available upon request (Mon-Fri)

Schedule


Monday, June 25
  • 9-12:30
  • 12:30 - 1:00 Lunch at BIRN CC
  • 1:00 - 5:00


Tuesday, June 26
  • 9 - 12:30
  • 12:30 - 1:30 Lunch elsewhere (not at BIRN CC)
  • 1:30 - 5:00


Useful Links

JxBrowser   21 Aug 2009 - 22:25 - NEW   DarenLee
Table of Contents


JxBrowser Eclipse Setup

  1. Set the native library locations for jniwrap.
    1. Run Configurations > Environment tab. Set the appropriate environmental variable:
      • Win32: PATH = ${workspace_loc}\common\lib\windows\JxBrowser
      • MacOSX: DYLD_LIBRARY_PATH = ${workspace_loc}\common\lib\mac\JxBrowser
      • Linux: LD_LIBRARY_PATH = ${workspace_loc}\common\lib\linux\JxBrowser
  2. Set the GRE_HOME environment variable. Run Configurations > Arguments tab. In the VM Arguments section, add:
    • -DGRE_HOME=${workspace_loc}\common\lib\{OS}\JxBrowser\xulrunner-{OS} where {OS} is windows/mac/linux.


DarenLee? - 21 Aug 2009

LONIMBATSchedule   10 Jun 2009 - 00:22 - r1.84   DarenLee
No permission to read topic MouseBIRN?.LONIMBATSchedule - perhaps you need to log in?
LONIMBATTechnicalNotes   05 Nov 2008 - 18:16 - r1.11   DarenLee
LONISubversionRepositoryStructure   16 Jun 2007 - 07:52 - r1.5   HengYuan

LONI Subversion Repository Structure

The LONI Subversion repository location is svn+ssh://cvs.loni.ucla.edu/cvs/map . The following is the directory structure under trunk/ , which contains all the source codes, libraries, and build scripts.

Be sure to read the MBAT/SHIVA Repository Check-in Policy before checking-in codes.

Directory Description
/atlas/ This directory contains some sample image volumes and BrainGraph files.
/doc/ Some text documentations.
/lib/ Shared binary libraries.
/resources/ Resources for each build.
/resources/braingrapheditor/ resources for BrainGraph Editor build.
/resources/kali/ resources for Kali build.
/resources/mbat/ resources for MBAT build.
/resources/shiva/ resources for SHIVA build.
/src/ Source code directory, which include not only Java source codes, but also various other resources, including build scripts. Its direct child directories are sources for different builds, core_src/ or plugin_src/.
/src/braingrapheditor_src/ This directory contains the sources for the BrainGraph Editor workspace and its standalone build sources.
/src/core_src/ This directory contains the core frame work. It is used by all other builds.
/src/kali_src/ This directory contains the sources only needed by Kali build. Kali is aimed to be a compact of SHIVA with only limited features.
/src/mbat_src/ This directory contains the sources only needed by MBAT build.
/src/plugins_src/ This directory contains various plugins that are not needed by all the builds.
/src/plugins_src/bams_src/ BAMS connection query.
/src/plugins_src/braingraph_src This directory contains sources for BrainGraph internal structure, file IO filters, and GUI viewing components.
/src/plugins_src/ccdb_src/ This directory contains clients for connecting to CCCDB services.
/src/plugins_src/curveeditor_src/ A 2D image registration workspace using registered curves
/src/plugins_src/exedemo_src/ An demo of how to write a SHIVA/MBAT plugin.
/src/plugins_src/expression_src/ Gene Expression query plugin.
/src/plugins_src/flexdockmanager_src/ Window manager using Flexdock docking framework.
/src/plugins_src/gemtool_src/ An old plugin for SHIVA that uses Dr. David Shattuck's automatic registration executable.
/src/plugins_src/jidemanager_src/ Window manager using JIDE docking framework.
/src/plugins_src/imagereg_src/ This directory contains archaic image registration (point and curve) workspaces.
/src/plugins_src/imagestack_src/ A plugin in the works for composing 2D images into a volume.
/src/plugins_src/latis_src/ A plugin that retrieve remote images using LONI latis server.
/src/plugins_src/ntclient_src/ This directory contains Heng's client implementation to NeuroTerrain server.
/src/plugins_src/popupmanager_src/ Window manager using popups windows rather than docking.
/src/plugins_src/pubmedsearch_src/ PubMed? query.
/src/plugins_src/registration_src/ This directory contains Erh-Fang Lee's image registration workspaces.
/src/plugins_src/shivalauncher_src/ A plugin for launching SHIVA by 3rd party programs (i.e. SmartAtlas?).
/src/plugins_src/smartatlaslauncher_src/ A plugin for launching SmartAtlas? within SHIVA.
/src/shiva_src/ This directory contains the sources needed to build SHIVA builds. Currently it also contains plugins needed by MBAT and Kali builds. Eventually many of these plugins would be moved to /src/plugin_src/.
LandmarkWarp   04 May 2009 - 23:37 - r1.2   DarenLee
Table of Contents


Landmark Warp Registration Plugin


User Manual



Introduction

The landmark-based registration plugin allows the user to align 2D or 3D images using the LONI Landmark warp library.

Getting Started

To use the landmark-based registration plugin:

  1. Open the Registration Workspace.
  2. Add and select the Source and Template data
  3. Select the Landmark Warp (2D/3D) item in the Registration Method combobox. If successful, the source and template data will be displayed in the workspace, along with the GUI controls.

File Formats supported

  1. Jpeg
  2. GIF
  3. TIFF (color, 16bit greyscale)
  4. PNG
  5. BMP

Cart objects supported

  1. derived class of Image2D

User interface

  • Adding/removing landmarks
    1. Mouse right-click to add landmarks. A corresponding landmark is shown in the other image, in the same relative position.
    2. Mouse left-click to select a landmark for editing. Mouse left-click and drag to move the landmark.
    3. To remove a landmark, mouse left-click to select, and then click the Delete button.
  • Zooming in/out
    1. Select the image to zoom by clicking the Apply Zoom checkbox underneath the image.
    2. Click the Zoom in (magnify icon) or Zoom out (magnify) buttons.
    3. To reset the view, click on the Reset button (home icon)
  • Registration type
    1. In the combobox, select the registration method.

Functional Specification



Workspace Interoperability

  • Result of the registration can be added to the cart as a BufferedImage object


Error Handling

Method Object Error Exception thrown Notes
setSourceObjects() -- Unsupported mbObject yes mbObjectException
setTemplateObjects() -- Unsupported mbObject yes mbObjectException
getRegisteredObjects() -- -- no none


DarenLee? - 04 May 2009

LargeDataViewerDesign   14 Jan 2009 - 18:02 - NEW   JeffBrandenburg

Supporting Large 3D Datasets in MBAT

We need to pick at least one data format for large (larger than available RAM, larger than a 32-bit address space) 3D image volumes. This rules out some formats, most notably multipage ("3D") TIFF, which uses 32-bit internal offsets and breaks for files larger than 2GB. I haven't been able to determine whether Analyze 7.5 format fully supports files larger than 4GB, but I've been able to save a 4GB stack in this format and reload it without errors or obvious problems.

Datasets this large impose several constraints. Downloading an entire dataset is impractical for many use cases, as it can take several minutes even on a fast local network, and hours on an intercontinental or residential network. Reslicing a non-memory-resident dataset "on the fly" is impractical as well, taking many seconds or minutes unless the dataset is specially formatted (see NeuroTerrain and related work); such special formats generally aren't widely supported by other imaging applications, so we would need to provide (and support!) software to translate volumes between special and standard formats.

It would be nice if we could store and serve large data in a compressed format, but as far as I know, common compressed formats (.gz) don't provide a computationally cheap way to seek and retrieve an arbitrary uncompressed "chunk" of data from the middle. We could use a ZIP archive of individual compressed slices, but I'd want to see some performance tests before picking this as our format of choice. I'd like to pick an uncompressed format for our first release.

Use cases

We want to support, at a minimum, browsing 2D slices of a 3D volume in the volume's "native" orientation. Slices in the native orientation may be stored as individual 2D image files, or as contiguous blocks within a 3D image file. It's generally easy to load and display native slices quickly enough to do it as part of a direct-manipulation task, so the user can adjust a control and watch for the desired slice to appear -- this implies a total latency of well under one second to load an image.

We would like to support browsing along three orthogonal axes -- the native axis of a volume (x-y planes at the current z location), and the other two "natural" axes (y-z at the current x location and x-z at the current y location). A simple "brute-force" solution is to pre-generate volumes in the other two orientations, and then retrieve slices natively from the appropriate volume. This triples storage overhead, but would seem to minimize computation and bandwidth to memory, storage, and the network. It also necessitates a way to keep track of the multiple, related volumes -- possibly a simple naming convention, but preferably a metadata format like the .keg or .atlas file.

We want to superimpose label information on large datasets. This implies that the atlas display system should be able to take advantage of large-data access methods, which implies architectural constraints on both the large-data model and the atlas viewer.

Implementation Details

Network vs. local file access

I anticipate that we will want to support both networked and local access to large datasets. I would prefer a design that isolates this issue as thoroughly as possible. At a high level of abstraction, we want to specify a dataset by name/location, request a slice from that dataset by orientation and position, and receive a 2D image representing that slice.

Obviously, NeuroTerrain already provides this for network data. I don't want to re-invent significant portions of the NeuroTerrain protocol! We may, however, want to define a subset of NeuroTerrain's functionality that would be easier to support for "dumb" data formats and protocols -- say, only supporting three orthogonal orientations (or a single native orientation), and only native resolution.

One large file vs lots of small files

If we represent a large 3D volume as a series of files (typically one per slice), it's easy to "manually" select files representing a subset of the whole volume, or open the volume in sections, or split it across small removable media. This also happens to be the native format for CIVM volume data, which makes it convenient for us. However, opening and closing a file entails more overhead than seeking within an already-open file (see below), and moving and copying large collections of files is less convenient than manipulating single files.

If we use a single-file (or file-plus-header) representation, it becomes harder to manually explore subsets of the volume outside of MBAT, but I don't think that should constitute an MBAT design constraint. It's potentially more efficient to work with a single file (see below).

Persistent channel vs. open/close for each new slice

MBAT's current image-reading model opens a file or network connection, loads the image into RAM, and closes the connection. So does ImageJ, and so do most other programs, at least by default.

Some "virtual" access methods, like ImageJ's Virtual Stack facility, do the same thing on a slice-by-slice basis -- to get a slice (or a row or a single voxel), you open the corresponding file, read it (in its entirety) into RAM, and close it. This fails miserably for operations that cross planes, as you're potentially doing N^2 open/read/close cycles to get an N*N slice. It can even cause problems for native-orientation browsing, though, because ImageJ's event-handling loop blocks on slice loading while it tracks the Z-axis scroll bar. If you're accessing a network service or file system that takes more than a few hundred milliseconds to open, read and close a file, navigation becomes difficult. In a network environment, it's very hard to meet that constraint. (When I did performance tests on SRB, opening a file imposed a 4- to 8-second MCAT delay.)

If we instead persist a connection -- keep a file open while we're browsing it, or keep a network connection alive -- we can get big latency improvements, which means big user-experience improvements. I'd like very much for our APIs to support this mode of operation.

Previous work, and lessons learned

Shiva and previous versions of MBAT offered large-data support, including support for CIVM large datasets. As best I could determine, this worked by downsampling data as it was loaded. This didn't work out well for our needs -- the initial opening was very, very slow (slower than simply reading the entire dataset), the downsampled data wasn't interpolated for smoothness, and there was no way to "zoom in" to get a full-resolution view. Getting higher-resolution images is one of CIVM's main reasons for existing, and if a tool can't show us our data at full resolution, it isn't useful to us. Mandatory downsampling is not an option.

The CIVM lab database serves up TIFF slices in native orientation "on demand" over a network connection. It uses ImageJ as a viewer, with a plug-in that extends !!ImageJ's virtual-stack code. It works okay on our LAN, but it's painful over remote connections because of how ImageJ interleaves image-load, display refresh, and navigation UI actions. I added a facility to cache a number of slices in RAM; this helps a little. Were I to start over, I'd want to re-engineer the event loop for stack navigation, and I'd consider loading a compressed image format (JPEG) during navigation, replacing it with an uncompressed TIFF when navigation pauses.

VoxStation, a commercial LIMS we use at CIVM, serves up JPEG or TIFF images in native or orthogonal orientations. It precomputes orthogonally resliced stacks, essentially keeping each stack in triplicate; it also precomputes JPEG image sequences for quicker transfer. Performance is outstanding on a LAN, and quite usable even over slower and higher-latency remote connections. The viewer, also based on ImageJ, caches and prefetches data aggressively.

Conclusions (for the moment)

The large-data viewer plugin should be able to display both local data (from a local file) and remote data (from a network service). If our high-level interface accepts an orientation and an offset, and returns a data block representing a 2D image, we can provide implementations for both access methods. At their simplest, these methods could just compute an offset into a file, grab one slice worth of data, and return it. We'll need to figure out how to negotiate things like voxel depth, byte-ordering and so forth.

We can gain performance benefits if we support persistent connections, either to an open file or to a network service. Adding a simple state component (open, closed, broken) to the interface shouldn't be prohibitive.

We will support Analyze and/or Nifti as our initial large-data format, since these formats appear to support large volumes. I would like to add support for CIVM native format (series of raw slice files), but I don't consider this a requirement for the first release.

For the first release, we may want to support only native-orientation viewing. Precomputed three-axis viewing could come in a subsequent release.

-- JeffBrandenburg - 14 Jan 2009

LargeVolumeAtlases   14 May 2009 - 15:18 - NEW   JeffBrandenburg
Table of Contents


Large Volume Atlas Plugin


User Manual



Introduction

The Large Volume Atlas plugin provides support for large volumes in the MBAT 3D Atlas Viewer. Please see LargeVolumes and 3D Atlas for details on preparing large volumes and atlas description files.

This plugin uses the same .atlas format as the 3D Atlas Viewer. If a .atlas file refers to large volumes via their .lhdr filenames, Large Volume Atlas will open those volumes as Large Volumes, without loading the full volumes into RAM.

Getting Started

To open a file using the 3D atlas rendering plugin

  1. Open the Viewer Workspace.
  2. If in DualView mode, select the target Viewport (Left-mouse-click anywhere in the viewport in the data display area).
  3. In the Layer Controls, open the dropdown menu to the right of the Open File button.
  4. Select Large Volume Atlas. An open file dialog box appears. Navigate to and select the file(s) you want to open (multiple selection allowed using Shift+Left-mouse-click). Click Open. If successful, the digital atlas (volume with colored labels) will appear in the data display area and the label hierarchy graphs will intially be docked to the left-side of the main application frame.

-- JeffBrandenburg - 14 May 2009

LargeVolumes   14 May 2009 - 14:30 - r1.7   JeffBrandenburg
Table of Contents


Large Volume Rendering Plugin


User Manual



Introduction

The Large Volume Viewer (LVV) plugin allows the user to view volume image data, such as MRI and CT, without loading an entire dataset into memory. Individual slices are loaded from a local file on demand. This makes it possible to browse volumes quickly (you don't have to load the whole volume in order to view a few slices), to browse large volumes (multi-gigabyte) on machines with limited RAM, and to open multiple large volumes simultaneously.

To avoid time-consuming out-of-core reslice operations, LVV by default displays volumes only in their "native" orientation -- if the original volume represents a specimen as a series of transverse slices, LVV will only display transverse views, and will not display sagittal or coronal orientations. If you precompute and save resliced volumes in orthogonal orientations, and make these volumes are available, LVV will display the corresponding orientations. This lets you browse a large volume in three orientations. Note that this approach triples the disk space required to represent the image volume.

LVV is currently subject to an 80MB limit imposed by the ImageJ subsystem; this means that images whose individual slices are very large may cause problems. We hope to address this issue prior to general release.

File format

In its initial version, LVV supports volumes in the Analyze format. This format puts header information in a small file with a .hdr extension, and voxel data in a file with a .img extension. To indicate to MBAT that a volume should be processed with LVV, change the header file's extension from .hdr to .lhdr.

NOTE: The Large Volume Viewer cannot display Analyze volumes with compressed image data (.img.gz, .img.z). LVV reads a slice by skipping to that slice's location in the .img file, without reading through the rest of the file first. There's no way to do this with standard .gz or .z files.

Preparing Analyze volumes for use with LVV

To let MBAT process an Analyze volume as a Large Volume, you must rename or copy its .hdr file to a .lhdr file (without any changes to its content). If you copy instead of renaming, and leave the .hdr file, you can still open the volume using the standard 3D volume viewer (assuming you have enough RAM).

Example:

% ls -lh bigvol.*
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:08 bigvol.hdr
-rw-r--r--  1 jeffb  staff   4.0G Apr 1 15:10 bigvol.img
% cp bigvol.hdr bigvol.lhdr
% ls -lh bigvol.*
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:08 bigvol.hdr
-rw-r--r--  1 jeffb  staff   4.0G Apr 1 15:10 bigvol.img
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:12 bigvol.lhdr

Preparing Orthogonal Views

To let LVV display orthogonal slices (coronal or sagittal orientation), you must provide versions of your .img file in the proper orientations. The original file is assumed to be in Nifti standard orientation: +x=Right, +y=Anterior, and +z=Superior (brain's left = left, olfactory bulbs are toward the bottom, cortex is toward the last slice). To generate a sagittal volume, use ImageJ or the tool of your choice to reslice the original volume from the left, and save the new volume in Analyze format with ".S" inserted between the filename and the .img extension. To generate a coronal volume, reslice the original volume from the top, and save the new volume in Analyze format with ".C" inserted between the filename and the .img extension. (LVV ignores the .S.hdr and .C.hdr files that are also produced; you can delete them, or leave them for other tools that may need them.)

ImageJ options to generate sagittal stack ImageJ options to generate coronal stack
Example (after reslicing and saving):
% ls -lh bigvol.*
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:08 bigvol.C.hdr
-rw-r--r--  1 jeffb  staff   4.0G Apr 1 15:10 bigvol.C.img
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:08 bigvol.S.hdr
-rw-r--r--  1 jeffb  staff   4.0G Apr 1 15:10 bigvol.S.img
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:08 bigvol.hdr
-rw-r--r--  1 jeffb  staff   4.0G Apr 1 15:10 bigvol.img
-rw-r--r--  1 jeffb  staff   348B Apr 1 15:12 bigvol.lhdr

-- JeffBrandenburg - 14 May 2009

LeiYan   04 May 2009 - 15:50 - r1.2   LeiYan
Lei Yan

leiyan2000@gmail.com

IT Specialist II

Department of Anatomy and Neurobiology

College of Medicine

University of Tennessee Health Science Center

LiteratureSearchPlugin   12 Nov 2008 - 19:58 - r1.2   DarenLee

Literature Search Plugin

Desired Features

  • Search multiple websites
    • based on config.xml
      • PubMed?, Google Scholar, etc.
  • Display options
    • Embed browser in MBAT (JDIC; MacOS? issues?)
    • External browser
  • Keyword Datasource Plugin
    • add to GUI
  • Add literature result to cart (?)
    • open action for literature object (TBD)

Use Case

  1. Select anatomical terms from braingraph/atlas
  2. Right-click option to search
  3. Switches to Search workspace
    • keyword textbox filled with search params
    • literature datasource auto-selected

Action Items

  • Search website API (if displaying as ResultTable?)
  • Evaluate embedded browsers versus converting to MBAT ResultTable?
  • Timeline
    • AHM Spring 2009

MAGEWorkingPage   20 Sep 2007 - 18:58 - r1.9   QueenieNg
20 Apr 2007

Introduction of the issue

For the past couple months, we have been trying to adopt MAGE as our standard, and make our existing BIRN Micro-array database to be MAGE compliant. Since BioWarehouse has the API and database framework that supports MAGE, we have decided to migrate our existing database to BioWarehouse.

Primary goal: Create MouseBIRN or BIRN group instance of MAGE by itemizing those packages in MAGE that are applicable to most MouseBIRN or BIRN group, and mapping our existing data model to MAGE-OM.


Background

So far, we have our initial MouseBIRN MAGE instance created based on MPTP data. This is a very preliminary form, and still open for suggestion. After our meeting with Stanley Nelson’s group, we found that they are also revolutionizing their existing MAGE instance, and we may not share similar data structures. However, they provide valuable input, and based on those and our research, here are some issues hopefully we can get it ironed out ASAP so that we can move forward.

Tasks

  1. Standardize some of the entries format across Mouse BIRN or BIRN test beds like
    • the identifier prefix
    • database reference code
    • ontology entries
    • acceptable data file format
    • log entries information
  2. Compare and differentiate the information between MAGE and XCEDE.
  3. Compare and differentiate the information between MAGE and BioWarehouse framework.
    • We may need to write our own MAGE loader to cover those packages that are not supported by the existing MAGE loader created by BioWarehouse.
  4. Compare and differentiate the information between BioWarehouse framework, CHADO Model, and Gemma database.

Link to the MAGE Entries Working page


References or links of interest

Affymetrix and EPI sites do provide very detailed explanation and examples of their usage of MAGE.

Developer work based on our “official” first draft of BIRN MAGE

  • Create XSLT to transform BIRN Microarray data or GeneNetwork data to MAGE format.
  • Import the MAGE files to BioWarehouse.
  • Create webservices to export the data from BioWarehouse to MAGE or other XML format that the client application supports.
  • Create XSLT to transforma MAGE to XCEDE and vice versa.

Minutes and Plans


MAGEentries   06 Jun 2007 - 16:48 - r1.28   QueenieNg
- 20 Apr 2007

Working Page to standardize some of the MAGE entries across Mouse BIRN or BIRN test beds

  1. the identifier prefix: To identify where the data is from and what source (Accession number)
    • is there a BIRN standard we should adopt? It is in 2004 to construct MAGE object identifiers in the following LSID-like manner: <authority>:[<namespace>]:<object>[:<revision>>]
    • Recommendation: Jeff G?
  2. database reference code: This specifies if the raw data is coming from another DB or if we point to data in another DB.
  3. acceptable data file format
    • Currently BIRN Microarray DB accepts CSV format, people may expect Excel, XML, or some other format for PROCESSED data (after normalization)
    • File format may depend on if we decide to accept data earlier in the workflow, i.e. a .cel file (reference Daniel Sforza's presentation)
    • Recommendation: .CSV, .XML (later), .CEL(Affymetrix CEL file)
  4. log entries information
    • After upload, the provenance information should be stored, possible examples: IP address, error messages,
    • Recommendations: We need input on what other types of information should be kept in this area

Ontology Entries

Click herefor entries need to be mapped to BIRNLex.

  1. Information about who is providing the data and where they are from
    • Role (Submitter/Experimenter)
    • Primary Investigator
    • Institute name, url
    • Funder and Grant #
    • Contact Information (phone, email)
    • Other?
  2. File information
    • File name
    • File location on other DB (url, uri, or urn)
    • File format
    • Date file generated (need this?)
    • Other?
  3. Experiment Information
    • Experiment name
    • Experiment description
    • Array Chip Type
    • Annotation or Reference to an external annotation database
    • Normalization or Summarization
    • Public accessible?
    • Publication Status (published, unpublished, submitted, in press, confidential)
  4. Experiment details
    • IRB information or human subject information
    • Group of Interest (normal, control, diseased, pre-diseased)
    • Treatment methods
    • Treatment chemical/compound
    • Tissue or structures information
  5. Subject(s) information
    • Species (preferred name and scientific name)
    • Strains
    • Developmental Stage (embryonic stages and adult stages)
    • Age/Age Unit
    • Sex(male, female, hemphrodites, other)

Ontology references:



MAGE-TAB

MAGE-TAB is a simplied version of MAGE-ML, and is proposed to be part of MAGEv2. The data is arranged in tabular format instead of XML like MAGE-ML. It consists four different types of files: Investigation Description Format(IDF), Array Design Format(ADF), Sample and Data Relationship Format(SDRF), Raw and processed data files.

Examples and Use Cases

Investigation Description Format (IDF) Example:

Investigation Title Chronic Mouse Model of Parkinson's Disease
Experimental Design Parkinson_Disease_Design
Experimental Factor Name genetic_modification_design
Experimental Factor Type genetic modification
Experimental Facotr Term Source REF BIRNLEX
Person Last Name Sforza
Person First Name Daniel
Person Email sforza@ucla.edu
Person Phone xxx-xxx-xxxx
Person Address  
Person Affiliation Laboratory of Neuro Imaging
Person Roles Experimenter
Person Roles Term Source REF  
Quality Control Type  
Quality Control Term Source REF  
Replicate Type  
Replicate Term Source REF  
Date of Experiment yyyy-mm-dd
Public Release Date yyyy-mm-dd
PubMedID  
Publication Author List  
Publication Status  
Experment Description  
Protocol Name  
Protocal Type  
Protocol Description  
Protocol Parameters  
Protocol Term Source REF  
SDRF File e-external_file.csv
Term Source Name BIRNLEX
Term Source File http://fireball.drexelmed.edu/birnlex/
Term Source Version 1.2

Sample and Data Relationship Format(SDRF) Example
Sourc Name Hybridization Name Array Design REF TERM SOURCE REF Array Data File Derived Array Data File
Sample 1 Experiment 1 A-AFFY-MOE430 AFFYMETRIX_TERM Data1.CEL AFFY_data1.CHP

Sample Name Characteristics [Organism] Characteristics [Organism Part] Characteristics [Organism Part] Characteristics
[Developmental Stage]
Protocol REF Parameter Value
[Compound]
Extract Name Labeled Extract Name Label Hybridization Name
M6_FCX Mouse Brain Frontal Cortex Adult   MPTP M6_FCX_Ext M6_FCX_lab_biotin Biotin M6_CTx_hyb
C6_FCX Mouse Brain Frontal Cortex Adult   Saline C6_FCX_Ext C6_FCX_lab_biotin Biotin C6_CTX_hyb



Tab2MAGE

This is a software package supported by ArrayExpress curators, which is able to generate MAGE-ML from Tab2MAGE spreadsheet document.The spreadsheet consists of three sections, separated by one or more blank lines: Experiment, Protocol and Hybridization.



GEO SOFTmatrix and GEOarchive

Daniel has submitted a microarray dataset to GEO using the SOFTmatrix and GEOarchive metadata format, and found it much clearer with example and annotations for large Affymetrix datasets. Their format may be easier for researchers to organize their information easily, and easily integrate with the database entries.

Example
  • Click here for Daniel's submittied file, which also includes the mapping between GEOarchive meta data and MAGE-TAB metadata.
  • Link to GEO site
  • Metadata mapping between GEOarchive and MAGE-TAB.
    GEOarchive MAGE-TAB
    SERIES IDF
    title Investigation Title
    summary Experiment Description
    overall design Experimental Design
    type N/A
    contributor[] Person Last Name
    Person First Name
    Person Mid Initial
    PLATFORM  
    title Investigation Title
    technology Protocol Contact
    distribution N/A
    organism Characteristics[] in SDRF section
    manufacturer Term Source
    manufacture protocol Term Source File
    SAMPLES SDRF
    Sample name Sample Name
    title Hybridization Name
    CEL file [Affymetrix submissions only] Array Data File
    EXP file [Affymetrix submissions only] Array Data File
    source name Source Name, Material Type
    organism Characteristics[organism]
    characteristics[] Characteristics[] (e.g Characteristics[Strain], Characteristics[Gender], Characteristics[Age])
    molecule Extract Name, Material Type
    label Label
    description Description
    platform reference to Term Source Name in IDF file
    PROTOCOLS  
    growth protocol Protocol Name, Protocol Type, Protocol Description
    treatment protocol Investigation Title
    extract protocol Same as Above
    EXP file [Affymetrix submissions only] Same as Above
    label protocol Same as Above
    hyb protocol Same as Above
    scan protocol Same as Above
    data processing Normalization Name
    value definition N/A



MAGE-ML

Example XML broken down by MAGE-ML package

Audit and Security
Audit and Security package contains classes that describe an individaul contact information, or an oragnization information, as wells as the the security group they belong, and the role they play.

Classes Item Detail Example
Audit and Security
Contact Organization name  
    affiliation  
    roles (ontology term)  
  Person name (last, first)  
    affiliation  
    roles (ontology term)  
    phone  
    email  
    fax  
Property Set IRB number  
    exp date  
    grant number  
  Public rec? yes or no  

Description
Description package contains classes that describe the external databases or annotations being referenced to.

Classes Item Detail Example
Annotation and Description
  Databases    
  Database Entries    
  Ontology Entries    

Array
Array package contains classes that describe individual arrays, including detailed information on relevant manufacturing proccesses. It also contains references to the LIMS data that might contain BioMaterial information being used.

Classes Item Detail Example
Array
ArrayManufacture ID unique identifier for each manufacturer, use manufacturer assession number as prefix  
  Person (Same as Contact->Person)  
  Arrays contain multiple array  
Array ID unique identifier for each array chip
    other array properties should be automatically loaded based on the array chip model

ArrayDesign
ArrayDesign package contains classes that describe a microarray design. PhysicalArrayDesign describes the design that is being used to manufacture physical array.

Classes Item Detail Remarks and Example
Array Design
Physical Array Design Composite Group    
  PhysicalArrayDesign    
  DesignElemntGroup FeatureGroup Contain multiple Feature
    Species ontology term

DesignElement
DesignElement contains classes that describes the purpose of each Array. The Feature describe the intended location on the Array. It can be specified as reporters or CompositeSequence for the arrays.

Classes Item Detail Example
Design Element
Feature Controlled Features    
  Control Type    

Experiment
Experiment package contains a collection of BioAssays that are related to the ExperimentalDesign. ExperimentalDesign is the description and collection of ExperimentalFactors and the BioAssays information.

Classes Item Detail Example
Experiment
Experimental Factors      
  Factors    
  Providers    
ExperimentDesign

BioSequence
BioSequence is a representation of DNA, RNA, protein sequence. It can be represented as Clone, Gene or a sequence.

Classes Item Detail Example
BioSequence      

BioMaterial
BioMaterial package describes the biological material being used, and the description of the creation through BioSource, BioSample, LabelExtract classes. BioMaterial can be related to other BioMaterial through DAG(directed acyclic graph). BioSample are products of treatments that are of interest. It can be used as the sources of other BioSamples. BioSource is the raw material information. LabelExtracts are special BioSamples? that have Compounds that are detectable.

Classes Item Detail Example
BioMaterial
  BioSource    
  BioSample    
  Other BioMaterial    
  ActionMeasurement    
  LabelExtract    

BioAssay
BioAssay represents both physical and computational groupings of arrays and biomaterials. PhysicalBioAssay is a bioAssay created by the BioAssayCreation event. A measured bioAssay is the direct processing of information in a physical bioAssay by the featureExtraction event. DerivedBioAssay is created by the Transformation BioEvent? from one or more MeasuredBioAssays or DerivedBioAssays.

Classes Item Detail Example
BioAssay DerivedBioAssay    
  MeasuredBioAssay    
  PhysicalBioAssay    
  BioAssayCreation    
  Hybridization    
  BioAssayTreatment    
  FeatureExtraction    
  Image    
  Image Acquisition    
  Channel    

BioAssayData
BioAssayData describes gene expression data. BioDataValues contain the actual values.

Classes Item Detail Example
BioAssayData